You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Gary D. Gregory (Jira)" <ji...@apache.org> on 2021/01/16 21:00:00 UTC
[jira] [Resolved] (IO-702) FileUtils.forceDelete does not delete
invalid links
[ https://issues.apache.org/jira/browse/IO-702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gary D. Gregory resolved IO-702.
--------------------------------
Fix Version/s: 2.9.0
Resolution: Fixed
[~xf01213]
Thank you for your PR. Merged in git master. Please verify and close this ticket.
TY!
> FileUtils.forceDelete does not delete invalid links
> ---------------------------------------------------
>
> Key: IO-702
> URL: https://issues.apache.org/jira/browse/IO-702
> Project: Commons IO
> Issue Type: Bug
> Components: Utilities
> Affects Versions: 2.8.0
> Reporter: Boris Unckel
> Priority: Critical
> Fix For: 2.9.0
>
> Time Spent: 2.5h
> Remaining Estimate: 0h
>
> The current implementation of FileUtils.forceDelete does not delete invalid links. Invalid links means one pointing to a non existing directory. This is _not related_ to the intended behaviour to _keep the destination_ of the link.
> The FileUtils.cleanDirectory is based on forceDelete but does not check the result. FileUtils.cleanDirectory assumes "no exception" means "directory is clean".
> FileUtils.deleteDirectory fails with "directory not empty".
> Testcase result (will provide that)
> {code:java}
> java.nio.file.DirectoryNotEmptyException: /tmp/junit4962570063696933090/realParentDirC
> at java.base/sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:246)
> at java.base/sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:105)
> at java.base/java.nio.file.Files.delete(Files.java:1146)
> at org.apache.commons.io.FileUtils.delete(FileUtils.java:1173)
> at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1192)
> at org.apache.commons.io.FileUtilsDeleteDirectoryBaseTestCase.testDeleteInvalidLinks(FileUtilsDeleteDirectoryBaseTestCase.java:216)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)