[ 
https://issues.apache.org/jira/browse/IO-141?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Niall Pemberton resolved IO-141.
--------------------------------

    Resolution: Fixed

Mark,

Thanks for the patch Mark, but there are two issues with it. Firstly it only 
resolves the recusion issue when copying to a directory directly below the 
destination (i.e "child"), but not for deeper levels (i.e. grandchild or 
below). Secondly its inconsistent IMO since it only partially copies the source 
directory and should IMO be ignoring only directories or files created by the 
copy.

I have applied an alternative solution to fix this which deals with the above 
two issues
   http://svn.apache.org/viewvc?rev=609147&view=rev:


> Infinite loop on FileUtils.copyDirectory when the destination directory is 
> within the source directory
> ------------------------------------------------------------------------------------------------------
>
>                 Key: IO-141
>                 URL: https://issues.apache.org/jira/browse/IO-141
>             Project: Commons IO
>          Issue Type: Bug
>          Components: Utilities
>    Affects Versions: 1.3.2
>         Environment: Win XP
>            Reporter: Mark Bryan Yu
>            Assignee: Niall Pemberton
>            Priority: Critical
>             Fix For: 1.4
>
>         Attachments: fix_recursion_bug.patch
>
>
> When you attempt to copy a directory and the destination directory is inside 
> the source directory an inifinite loop occurs in the copyDirectory causing 
> Commons-IO to create a folder w/o stopping until its reaches OS limitation.
> This code will recreate the bug:
> FileUtils.copyDirectory(new File("C:\\temp\\test-io\\a\\."), new 
> File("C:\\temp\\test-io\\a\\." + File.separator + new Date().getTime()));
> Make sure C:\temp\test-io\a exists

-- 
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