The implementation of the FileCopier causes problems with sal - needing the system file-handler to be exposed for various statting methods.
It is unclear that we really need the FileCopier class either - it looks like it is used only internally to the tools/ code and in only one place: DirEntry::CopyTo.
And then only if:
FSYS_ACTION_COPYFILE == (nActions & FSYS_ACTION_COPYFILE)
And then only on Unix ;-) we should audit to ensure that all CopyTo's only use FSYS_ACTION_COPYFILE - the best way is prolly to drop the nActions flag completely, and then do a full re-compile to catch all the call sites.
We should also check and remove this lot:
#define FSYS_ACTION_RECURSIVE 0x02 // deep through dircetory structure
#define FSYS_ACTION_USERECYCLEBIN 0x04 // move to recycle bin
#define FSYS_ACTION_MOVE 0x08 // delete after copy (=> move)
#define FSYS_ACTION_CONTINUE 0x10 // continue on error
#define FSYS_ACTION_KEEP_EXISTING 0x20 // do not overwrite objects in
From the header, and any code paths that go with them too.
It'd be great to drop that big block of cruft :-)
Deteted "Easyhack" from summary
Andras Timar committed a patch related to this issue.
It has been pushed to "master":
fdo#44994 write out tools' FileCopier class
The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
Affected users are encouraged to test the fix and report feedback.
Migrating Whiteboard tags to Keywords: (EasyHack,DifficultyInteresting,SkillCpp,TopicCleanup )