You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Jason Ginchereau (JIRA)" <ji...@apache.org> on 2015/11/05 19:00:31 UTC
[jira] [Updated] (CB-9282) Plugin File for Android seems to require
trailing slash to identify a directory
[ https://issues.apache.org/jira/browse/CB-9282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jason Ginchereau updated CB-9282:
---------------------------------
Component/s: (was: Android)
> Plugin File for Android seems to require trailing slash to identify a directory
> -------------------------------------------------------------------------------
>
> Key: CB-9282
> URL: https://issues.apache.org/jira/browse/CB-9282
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin File
> Affects Versions: 2.1.0
> Reporter: Adriano Di Giovanni
> Priority: Minor
> Labels: Android
>
> Looking at LocalFileSystemURL.java, lines 39~55
> ```java
> public static LocalFilesystemURL parse(Uri uri) {
> if (!FILESYSTEM_PROTOCOL.equals(uri.getScheme())) {
> return null;
> }
> String path = uri.getPath();
> if (path.length() < 1) {
> return null;
> }
> int firstSlashIdx = path.indexOf('/', 1);
> if (firstSlashIdx < 0) {
> return null;
> }
> String fsName = path.substring(1, firstSlashIdx);
> path = path.substring(firstSlashIdx);
> boolean isDirectory = path.charAt(path.length() - 1) == '/';
> return new LocalFilesystemURL(uri, fsName, path, isDirectory);
> }
> ```
> I found that operations on urls like cdvfile://localhost/persistent (without trailing slash) don't work because firstSlashIds < 0.
> Looking at line 53, Plugin file relies on trailing slash to know in advance if uri is a directory.
> I can't find any mention of that in the docs.
> I find that relying on trailing slashes to identify a directory imposes a burden for client code that must normalize all paths before calling any Plugin File function.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org