You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Andrew Grieve (JIRA)" <ji...@apache.org> on 2014/06/05 20:53:01 UTC
[jira] [Commented] (CB-6883) iOS: fileSystemURLforArg returns nil
for file:// url with spaces
[ https://issues.apache.org/jira/browse/CB-6883?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14019096#comment-14019096 ]
Andrew Grieve commented on CB-6883:
-----------------------------------
If a URL has a space in it, then it's a malformed URL. I think with your change, a properly formatted URL (one with %20 in it), would end up double-escaped. Arguably, we could be more forgiving for malformed URLs by doing a search-and-replace for spaces->%20
> iOS: fileSystemURLforArg returns nil for file:// url with spaces
> -----------------------------------------------------------------
>
> Key: CB-6883
> URL: https://issues.apache.org/jira/browse/CB-6883
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin File
> Affects Versions: 3.5.0
> Environment: iOs
> Reporter: Vladimir Avdonin
>
> For file:// url with spaces, such as any path on iphone simulator, fileSystemURLforArg returns nil. The following change fix the issue:
> diff --git a/src/ios/CDVFile.m b/src/ios/CDVFile.m
> index b22b7cf..2b3a567 100644
> --- a/src/ios/CDVFile.m
> +++ b/src/ios/CDVFile.m
> @@ -348,7 +348,8 @@ NSString* const kCDVFilesystemURLPrefix = @"cdvfile";
> CDVFilesystemURL* ret = nil;
> if ([urlArg hasPrefix:@"file://"]) {
> /* This looks like a file url. Get the path, and see if any handlers recognize it. */
> - NSURL *fileURL = [NSURL URLWithString:urlArg];
> + NSString* webStringURL = [urlArg stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
> + NSURL *fileURL = [NSURL URLWithString:webStringURL];
> NSURL *resolvedFileURL = [fileURL URLByResolvingSymlinksInPath];
> NSString *path = [resolvedFileURL path];
> ret = [self fileSystemURLforLocalPath:path];
--
This message was sent by Atlassian JIRA
(v6.2#6252)