cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <>
Subject [jira] [Commented] (CB-14197) createFile/writeFile does not consistently execute the 'write' action resulting in files of size 0
Date Mon, 09 Jul 2018 21:33:00 GMT


ASF GitHub Bot commented on CB-14197:

wfairclough opened a new pull request #237: CB-14197: (all) Fix for createFile/writeFile silently
failing to send 'write' action
   FileWriter is missing the require('./FileReader') module causing the
   native FileReader to be used instead of the FileReader proxy.
   Oddly this does not happen everytime, but I could consistently
   reproduce the issue when running subsequent `cordova run android`
   commands on an Ionic app running in a 7.1.1 Android Emulator.
   ### Platforms affected
   All Platforms
   Witnessed on Android
   ### What does this PR do?
   Adds a missing require statement to ensure the correct FileReader is used
   ### What testing has been done on this change?
   Since this issue was very difficult to reproduce it was pretty hard to test. We found
   that this issue occurs most frequently when running our ionic app in the Android
   emulator and then run `ionic cordova run android` multiple times to reinstall the app
   before we consistently saw the issue. With the changes from this PR we stopped
   seeing the issue entirely.
   I believe this PR will also fix the issue reported on the ionic-native project:
   `npm test` passes
   ### Checklist
   - [x] [Reported an issue]( in the JIRA
   - [x] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file
paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
   - [ ] Added automated test coverage as appropriate for this change.

This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:

> createFile/writeFile does not consistently execute the 'write' action resulting in files
of size 0
> --------------------------------------------------------------------------------------------------
>                 Key: CB-14197
>                 URL:
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: cordova-plugin-file
>            Reporter: Will Fairclough
>            Priority: Major
> Occasionally when calling the *createFile* API the *write* action does not get called. It
was not very consistent though and it is very hard to reproduce. It seems as though the *onload*
event was not firing on the fileReader in the write method resulting in the file never getting
written and no callbacks being fired.
> {code:java}
> if (data instanceof File || (!isProxySupportBlobNatively && supportsBinary &&
data instanceof Blob)) {
>    var fileReader=new FileReader();
>    /* eslint-enable no-undef */
>    fileReader.onload=function () {
>    // Call this method again, with the arraybuffer as argument
>, this.result, true/* isPendingBlobReadResult
>    };
>    ...
> }
> {code}
> We found we would notice the issue more consistently when running the app in the Android
emulator subsequent times in a row with the command:
> {code:java}
> $ cordova run android{code}
> We fixed this by requiring the FileReader module:
> []
> With this change we have not noticed the issue anymore.
> I also believe this *ionic-native* issue is related to this:
> []

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message