SFTP: getChildren() does not restore working dir if exception is thrown
-----------------------------------------------------------------------

                 Key: VFS-286
                 URL: https://issues.apache.org/jira/browse/VFS-286
             Project: Commons VFS
          Issue Type: Bug
    Affects Versions: Nightly Builds
            Reporter: Kirill Safonov
            Priority: Critical


SftpFileObject.doListChildrenResolved() changes the working dir before doing 
ChannelSftp.ls() call. If ls() throws an exception (in my case it's 
SftpException "No such file" when trying to list the contents of "/dev/cdrom"), 
the execution is blown out the method and channel.cd(workingDirectory) is not 
performed. *All* the subsequent operations that rely on the current dir will 
fail trying to cd() into unexisting directory.

This fix will be to move the channel.cd(workingDirectory); part into the 
finally {} block below


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to