[
https://issues.apache.org/jira/browse/CB-10666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nikhil Khandelwal updated CB-10666:
-----------------------------------
Labels: triaged (was: )
> Native callbacks executing in the middle of other JS functions
> --------------------------------------------------------------
>
> Key: CB-10666
> URL: https://issues.apache.org/jira/browse/CB-10666
> Project: Apache Cordova
> Issue Type: Bug
> Components: iOS
> Reporter: Ralf Kistner
> Labels: triaged
>
> In some cases, the native callback seems to happen in the middle of another
> JS call. Simplified stack trace:
> {code}
> succeeded@/plugins/io.litehelpers.cordova.sqlcipher/www/SQLitePlugin.js:471:19
> handleStatementSuccess@/plugins/io.litehelpers.cordova.sqlcipher/www/SQLitePlugin.js:346:12
> /plugins/io.litehelpers.cordova.sqlcipher/www/SQLitePlugin.js:371:38
> mycb@/plugins/io.litehelpers.cordova.sqlcipher/www/SQLitePlugin.js:417:20
> callbackFromNative@/cordova.js:293:63
> /cordova.js:1109:35
> nativeEvalAndFetch@/cordova.js:1117:13
> nativeCallback@/cordova.js:1106:38
> global code@/myindex.html:1:47
> removeChild@[native code]
> remove@/myscript.js:5506:33
> {code}
> Often it's not an issue, but in some cases it causes really unexpected
> behaviour, and can cause the application to malfunction in ways that are hard
> to debug. See similar issue previously reported for Android:
> https://issues.apache.org/jira/browse/CB-6181
> This happens especially when using a plugin such as SQLite/SQLCipher, which
> triggers a large number of native callbacks.
> There does appear to be some code to handle this case - I'm not sure why it's
> not working here:
> https://github.com/apache/cordova-ios/blob/9513bc6/CordovaLib/Classes/Public/CDVCommandDelegateImpl.m#L90
> The SQLite/SQLCipher plugin does appear to be using multithreading, but I
> haven't confirmed this.
> Tested on Cordova-iOS 3.9.2.
> A workaround is to wrap all native callbacks in a setTimeout or similar call,
> but this may have some performance impact.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]