You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by "Andrew Grieve (JIRA)" <ji...@apache.org> on 2012/09/24 16:57:07 UTC
[jira] [Created] (CB-1532) FileTransfer.abort() may not work right
.download()/.upload() due to a race condition.
Andrew Grieve created CB-1532:
---------------------------------
Summary: FileTransfer.abort() may not work right .download()/.upload() due to a race condition.
Key: CB-1532
URL: https://issues.apache.org/jira/browse/CB-1532
Project: Apache Cordova
Issue Type: Bug
Components: Android
Affects Versions: 2.2.0
Reporter: Andrew Grieve
Assignee: Andrew Grieve
Priority: Minor
Fix For: 2.2.0
.abort() must run after .upload() or .download(). However, .upload() and .download() get run on a background thread, so there is no guarantee of ordering.
I think the fix here is to tweak the plugin API to allow async plugins to start running sync, and then dispatch their async part by themselves rather than having PluginManager do it.
Will bring up on mailing-list before making changes on this.
--
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
[jira] [Resolved] (CB-1532) FileTransfer.abort() may not work right
.download()/.upload() due to a race condition.
Posted by "Andrew Grieve (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CB-1532?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Grieve resolved CB-1532.
-------------------------------
Resolution: Fixed
commit:
https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git;a=commit;h=05bc1865a63a09a2fde92adeb1ffc59884ef4dc3
> FileTransfer.abort() may not work right .download()/.upload() due to a race condition.
> --------------------------------------------------------------------------------------
>
> Key: CB-1532
> URL: https://issues.apache.org/jira/browse/CB-1532
> Project: Apache Cordova
> Issue Type: Bug
> Components: Android
> Affects Versions: 2.2.0
> Reporter: Andrew Grieve
> Assignee: Andrew Grieve
> Priority: Minor
> Fix For: 2.2.0
>
>
> .abort() must run after .upload() or .download(). However, .upload() and .download() get run on a background thread, so there is no guarantee of ordering.
> I think the fix here is to tweak the plugin API to allow async plugins to start running sync, and then dispatch their async part by themselves rather than having PluginManager do it.
> Will bring up on mailing-list before making changes on this.
--
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