[ https://issues.apache.org/jira/browse/IO-276?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ron Kuris updated IO-276: ------------------------- Attachment: IO-276-r1201108-patch.txt deleteDirectoryOnExit is a private method. However, you probably meant FileUtils#cleanDirectoryOnExit, which indeed does have this problem. This is difficult to write a junit test for this. However, the test code never even calls this method. I modified the cleanup code to call it; hopefully someone will discover stray files if the cleanDirectoryOnExit method fails. Patch attached. > "FileUtils#deleteDirectoryOnExit(File)" does not work > ----------------------------------------------------- > > Key: IO-276 > URL: https://issues.apache.org/jira/browse/IO-276 > Project: Commons IO > Issue Type: Bug > Environment: Commons IO 1.4 > Reporter: nkami > Priority: Minor > Attachments: IO-276-r1201108-patch.txt > > > I called this method, but the target directory was not deleted. > The source of this method is as follows. > ---------- > private static void deleteDirectoryOnExit(File directory) throws > IOException { > if (!directory.exists()) { > return; > } > cleanDirectoryOnExit(directory); > directory.deleteOnExit(); > } > ---------- > In other words, this method calls "java.io.File#deleteOnExit" in order of > "grandchildren -> children -> parent" for files of the target directory > hierarchy. > There is following mention in javadoc of "java.io.File#deleteOnExit". > ---------- > Files (or directories) are deleted in the reverse order that they are > registered. > ---------- > Therefore, I think the calling order of "java.io.File#deleteOnExit" should be > reverse. > How will be it? -- 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