[
https://issues.apache.org/jira/browse/CB-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13454315#comment-13454315
]
Braden Shepherdson commented on CB-1388:
----------------------------------------
I've got the Javascript changes for part 2 complete, but I'm sitting on them
until 2.1.0 goes out.
> Add reset() to plugin API and fix callback collisions on all platforms
> ----------------------------------------------------------------------
>
> Key: CB-1388
> URL: https://issues.apache.org/jira/browse/CB-1388
> Project: Apache Cordova
> Issue Type: Bug
> Components: Android, Bada, BlackBerry, CordovaJS, iOS, Qt, Tizen,
> webOS
> Affects Versions: 2.0.0
> Reporter: Braden Shepherdson
> Assignee: Braden Shepherdson
> Fix For: 2.2.0
>
>
> There are three parts to this bug.
> First, platform-specific: we should add a reset() function to the plugin API
> which is called on top-level navigation or refresh, so that plugins can know
> to cancel any long-running requests and reinitialize themselves. This won't
> be relevant to some platforms
> Second, platform-independent: the callback IDs generated on the Javascript
> side should be randomized in some way to prevent collisions after navigation.
> Otherwise a request might get the ID "Service1", and before it has a chance
> to complete we navigate and a new request is made, also receiving "Service1".
> Then the first response comes back and the new Service1 callback is handed
> the old results.
> Third, we should add a test for this to Mobile Spec, if possible. This is a
> tricky thing to reproduce reliably, unfortunately.
> I'll tackle the second and third parts, and Android for the first part. It
> would be great if people who work on other platforms would add the reset()
> logic, or close the platform bugs if the platform is all-Javascript and fully
> reloaded on navigation.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira