[
https://issues.apache.org/jira/browse/VFS-338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bernd Eckenfels resolved VFS-338.
---------------------------------
Resolution: Fixed
Fix Version/s: 2.1
Assignee: Bernd Eckenfels
I have a testcase and it works for the fix. Without it will generate the
follwoing exception instead of a FSE:
{code}
java.lang.StringIndexOutOfBoundsException: String index out of range: 5
at
java.lang.AbstractStringBuilder.charAt(AbstractStringBuilder.java:210)
at java.lang.StringBuilder.charAt(StringBuilder.java:76)
at
org.apache.commons.vfs2.provider.local.WindowsFileNameParser.extractWindowsRootPrefix(WindowsFileNameParser.java:62)
at
org.apache.commons.vfs2.provider.local.WindowsFileNameParser.extractRootPrefix(WindowsFileNameParser.java:36)
at
org.apache.commons.vfs2.provider.local.LocalFileNameParser.parseUri(LocalFileNameParser.java:79)
at
org.apache.commons.vfs2.provider.AbstractFileProvider.parseUri(AbstractFileProvider.java:193)
at
org.apache.commons.vfs2.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:56)
at
org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:696)
at
org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:652)
at
org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:605)
at
org.apache.commons.vfs2.provider.local.test.WindowsFileNameTests.testWindowsFilenameUNCStartError(WindowsFileNameTests.java:83)
{code}
Fixed in http://svn.apache.org/viewvc?view=revision&revision=1595560
> Possible crash in extractWindowsRootPrefix method
> -------------------------------------------------
>
> Key: VFS-338
> URL: https://issues.apache.org/jira/browse/VFS-338
> Project: Commons VFS
> Issue Type: Bug
> Affects Versions: 2.0
> Environment: Windows
> Reporter: Daniel R
> Assignee: Bernd Eckenfels
> Fix For: 2.1
>
>
> extractWindowsRootPrefix method has a possible crash. Found it trying to get
> special windows working.
> if (startPos == maxlen && name.length() > startPos &&
> name.charAt(startPos + 1) == '/')
> {
> // Too many '/'
> throw new
> FileSystemException("vfs.provider.local/not-absolute-file-name.error", uri);
> }
> This should be something like so:
> if (startPos == maxlen && name.length() > startPos && name.length() >
> (startPos + 1) && name.charAt(startPos + 1) == '/')
> {
> // Too many '/'
> throw new
> FileSystemException("vfs.provider.local/not-absolute-file-name.error", uri);
> }
--
This message was sent by Atlassian JIRA
(v6.2#6252)