You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ag...@apache.org on 2014/05/20 21:14:51 UTC
git commit: ios: Don't fail a write of zero-length payload.
Repository: cordova-plugin-file
Updated Branches:
refs/heads/master f92017f25 -> 2165395ee
ios: Don't fail a write of zero-length payload.
Project: http://git-wip-us.apache.org/repos/asf/cordova-plugin-file/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugin-file/commit/2165395e
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugin-file/tree/2165395e
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugin-file/diff/2165395e
Branch: refs/heads/master
Commit: 2165395ee6d75f464e490f2e517c2ef5a12e7392
Parents: f92017f
Author: Andrew Grieve <ag...@chromium.org>
Authored: Tue May 20 15:14:26 2014 -0400
Committer: Andrew Grieve <ag...@chromium.org>
Committed: Tue May 20 15:14:26 2014 -0400
----------------------------------------------------------------------
src/ios/CDVLocalFilesystem.m | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-plugin-file/blob/2165395e/src/ios/CDVLocalFilesystem.m
----------------------------------------------------------------------
diff --git a/src/ios/CDVLocalFilesystem.m b/src/ios/CDVLocalFilesystem.m
index db3433d..e665b04 100644
--- a/src/ios/CDVLocalFilesystem.m
+++ b/src/ios/CDVLocalFilesystem.m
@@ -467,17 +467,21 @@
NSOutputStream* fileStream = [NSOutputStream outputStreamToFileAtPath:filePath append:shouldAppend];
if (fileStream) {
NSUInteger len = [encData length];
- [fileStream open];
+ if (len == 0) {
+ result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsInt:len];
+ } else {
+ [fileStream open];
- bytesWritten = (int)[fileStream write:[encData bytes] maxLength:len];
+ bytesWritten = (int)[fileStream write:[encData bytes] maxLength:len];
- [fileStream close];
- if (bytesWritten > 0) {
- result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsInt:bytesWritten];
- // } else {
- // can probably get more detailed error info via [fileStream streamError]
- // errCode already set to INVALID_MODIFICATION_ERR;
- // bytesWritten = 0; // may be set to -1 on error
+ [fileStream close];
+ if (bytesWritten > 0) {
+ result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsInt:bytesWritten];
+ // } else {
+ // can probably get more detailed error info via [fileStream streamError]
+ // errCode already set to INVALID_MODIFICATION_ERR;
+ // bytesWritten = 0; // may be set to -1 on error
+ }
}
} // else fileStream not created return INVALID_MODIFICATION_ERR
} else {