getPrefixLength returns null if filename has leading slashes
------------------------------------------------------------

                 Key: IO-299
                 URL: https://issues.apache.org/jira/browse/IO-299
             Project: Commons IO
          Issue Type: Bug
          Components: Utilities
    Affects Versions: 2.1, 2.0.1
            Reporter: Rick Latrine


Situation:
FilenameUtils.getPrefixLength is used in FilenameUtils.doNormalize.
FilenameUtils.normalize("////I don't want to become null!") returns null.

Problem:
Expected was: "I don't want to become null!"
The method FilenameUtils.getPrefixLength returns -1 for the mentioned string.
The root problem is found in following lines of code:
{code:title=FilenameUtils.getPrefixLength}
...
                int posUnix = filename.indexOf(UNIX_SEPARATOR, 2);
                int posWin = filename.indexOf(WINDOWS_SEPARATOR, 2);
                if ((posUnix == -1 && posWin == -1) || posUnix == 2 || posWin 
== 2) {
                    return -1;
                }
...
{code}

Solution:
All leading slashes should be ignored at all, but considering the rest of the 
string.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to