Merge pull request #265 from okode/fix_ios_path_encoding

Fix ios path encoding
This commit is contained in:
Aaron Faber 2019-07-04 09:53:02 +01:00 committed by GitHub
commit d8927a5b32
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- (void) open: (CDVInvokedUrlCommand*)command { - (void) open: (CDVInvokedUrlCommand*)command {
NSString *path = [[command.arguments objectAtIndex:0] stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLPathAllowedCharacterSet]]; NSString *path = [command.arguments objectAtIndex:0];
NSString *contentType = [command.arguments objectAtIndex:1]; NSString *contentType = [command.arguments objectAtIndex:1];
BOOL showPreview = YES; BOOL showPreview = YES;
@ -53,7 +53,15 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
} }
dispatch_async(dispatch_get_main_queue(), ^{ dispatch_async(dispatch_get_main_queue(), ^{
NSURL *fileURL = [NSURL URLWithString:[path stringByRemovingPercentEncoding]]; NSURL *fileURL = NULL;
NSString *decodedPath = [path stringByRemovingPercentEncoding];
if ([path isEqualToString:decodedPath]) {
NSLog(@"Path parameter not encoded. Building file URL encoding it...");
fileURL = [NSURL fileURLWithPath:[path stringByReplacingOccurrencesOfString:@"file://" withString:@""]];;
} else {
NSLog(@"Path parameter already encoded. Building file URL without encoding it...");
fileURL = [NSURL URLWithString:path];
}
localFile = fileURL.path; localFile = fileURL.path;