cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Edna Y Morales <eymor...@us.ibm.com>
Subject [iOS] Possible Cordova bug with WebSocket in plugin callback
Date Tue, 03 Feb 2015 16:58:39 GMT


Hi all,

I'm working on a bug that was reported for iOS (not through Jira), and I'm
running out of ideas on figuring out what is going on. So I'm reaching out
to the dev list to see if anyone can provide insight or thoughts on what
may be going on. The use case is this:

1. Call navigator.geolocation.getCurrentPosition(success, error);
2. Inside the success callback, open a websocket.
3. Inside websocket.onopen event handler, have a for loop that runs 20,000
times. Inside the for loop send a message to the websocket, increment a
counter, and update an element in the DOM with the new count.

The crash happens on the DOM update inside of the for loop. If I move the
websocket code outside of the plugin callback, the crash is not seen. If I
append a new element to the DOM instead of updating the same element, the
crash is not seen. If I switch out the Cordova geolocation plugin for the
native one, the crash is not seen. I have tried a few other scenarios but
can't pinpoint anything. The crash is happening on the WebThread and
sometimes I get this message "[CFRunLoopTimer release:]: message sent to
deallocated instance 0x174370c80". The stack trace doesn't trace back to
anything specific to Cordova code. It's from the WebCore. It seems like it
could just be a bug in WebKit, but some of the scenarios mentioned above
also make that hard to verify. If anyone has any insight on this, it would
be great. Let me know if you need anymore details.

Thanks,
Edna Morales
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message