Description
🐛 Bug Report
The bug seems to occur only on iOS on one app of mine with a very confusing behavior.
To Reproduce
Steps to reproduce the behavior:
On my app:
- navigate to a screen containing a Select component ;
- open the Select popover (no need to select another item) ;
- navigate to next screen ;
- go back to first screen.
App crashes in release mode / Red screens in debug mode with the message "Got unexpected undefined" pointing to measureSelf function in "node_modules/@ui-kitten/components/devsupport/components/measure/measure.component.js".
If you don't open the Select popover there is no crash.
A quick session with Flipper shows that measureSelf passes "null" in the "node" variable.
It seems to be a problem about the Select component keeping reacting to system events after being unmounted... Adding a setTimeout() does not solve anything.
I'm fixing it with a patch adding a null check on the node variable before calling measureInWindow().
I'll work on a repro and a PR as soon as possible.
Expected behavior
App doesn't crash :)
Link to runnable example or repository (highly encouraged)
I'll try to take time to produce one later.
UI Kitten and Eva version
Package | Version |
---|---|
@eva-design/eva | 2.1.1 |
@ui-kitten/components | 5.1.2 |
Environment information
OS: macOS 13.5.2
CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Binaries:
Node: 16.20.2 - ~/.nvm/versions/node/v16.20.2/bin/node
Yarn: 1.22.19 - /usr/local/bin/yarn
npm: 8.19.4 - ~/Sources/Adoria/adoria-start/node_modules/.bin/npm
pnpm: 8.9.0 - /usr/local/bin/pnpm
Watchman: 2023.08.28.00 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: DriverKit 23.0, iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0
IDEs:
Android Studio: 2022.2 AI-222.4459.24.2221.10121639
Xcode: 15.0/15A240d - /usr/bin/xcodebuild
npmPackages:
react: 18.2.0 => 18.2.0
react-native: 0.72.5 => 0.72.5