in reply to Archive::Zip problem

Archive::Zip::addTree calls File::Find::find, which probably clobbers the find you're doing. I don't see anything in the Archive::Zip code to accommodate an already running find, so if File::Find doesn't have it (I haven't checked, but I doubt it does), that's the problem.

What you'd need to do is avoid calling anything in Archive::Zip while you're still in the middle of your own find. That means using find to build a list of things you want to operate on, and then doing the Archive::Zip work with them after your find is done.

Replies are listed 'Best First'.
Re^2: Archive::Zip problem
by ferreira (Chaplain) on Dec 28, 2006 at 10:15 UTC

    I think your (kyle's) concern with recursive calls to File::Find does not apply anymore (since 5.8). In the section HISTORY, we read:

    File::Find used to produce incorrect results if called recursively. During the development of perl 5.8 this bug was fixed. The first fixed version of File::Find was 1.01.
Re^2: Archive::Zip problem
by jatoba (Initiate) on Dec 28, 2006 at 14:37 UTC
    That makes sense. I'll resctructure the code and give it a try. Thanks for the help.