You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Peter (JIRA)" <ji...@apache.org> on 2013/08/22 01:54:52 UTC

[jira] [Reopened] (CB-4560) Android call to pauseTimers might not pause timers

     [ https://issues.apache.org/jira/browse/CB-4560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Peter reopened CB-4560:
-----------------------

    
> Android call to pauseTimers might not pause timers
> --------------------------------------------------
>
>                 Key: CB-4560
>                 URL: https://issues.apache.org/jira/browse/CB-4560
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Android
>    Affects Versions: 2.9.0
>         Environment: GingerBread devices
>            Reporter: Peter
>            Assignee: Joe Bowser
>
> Older Android versions (eg GINGERBREAD) had some quirk where the API pauseTimers/resumeTimers was controlled by an internal reference counter.
> Refer to http://grepcode.com/file_/repository.grepcode.com/java/ext/com.google.android/android/4.0.1_r1/android/webkit/JWebCoreJavaBridge.java/?v=diff&id2=2.3.3_r1 
> It means that unless the pauseTimers/ResumeTimers were carefully balanced then calling these API methods might not actually be doing what the caller expects. 
> The CordovaWebView.java code calls to the Android pauseTimers/resumeTimers are not balanced (the call to pauseTimers is conditional but the call to resumeTimers is unconditional). Because of this, there would be some scenario where resumeTimers gets called more times than pauseTimers, and in such a case the pauseTimers is not actually going to do anything on a GINGERBREAD device.

--
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