You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It was tried to call PanthalassaCall to get contacts and documents on login. Since the calls are driven by sagas, they was called almost at the same time. It turns out into a crash (means the app crash, not a red screen).
Investigation
It was found that arguments on native modules methods are incorrect in the case described above. Specifically, all of them are nil. That cause the crash when trying to call a callback - resolve or reject.
Explanation
It looks like initialization code of RCTModuleMethod is not thread-safe, therefore when we are calling some native method at the same cycle twice (when it's the first call of that method till now) it cause concurrent initialization, which cause some arguments to not be retained correctly, which in turn cause them to be nil.
Acceptance criteria
No crash on concurrent call
Additional information
As a quick workaround we can just call each method one time somewhere at start of the app to be sure that initialization is done.
The text was updated successfully, but these errors were encountered:
Feature / Issue
Observation
It was tried to call
PanthalassaCall
to get contacts and documents on login. Since the calls are driven by sagas, they was called almost at the same time. It turns out into a crash (means the app crash, not a red screen).Investigation
It was found that arguments on native modules methods are incorrect in the case described above. Specifically, all of them are nil. That cause the crash when trying to call a callback -
resolve
orreject
.Explanation
It looks like initialization code of RCTModuleMethod is not thread-safe, therefore when we are calling some native method at the same cycle twice (when it's the first call of that method till now) it cause concurrent initialization, which cause some arguments to not be retained correctly, which in turn cause them to be nil.
Acceptance criteria
Additional information
As a quick workaround we can just call each method one time somewhere at start of the app to be sure that initialization is done.
The text was updated successfully, but these errors were encountered: