X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FMover.cpp;h=13ee2c81de5c9e343023eef52250364e76eba1a7;hb=4db3e641ed6765e005343010cb90ee8af26f8f99;hp=17cb7ba57a43fcdba7b74bce13d97c829c9572b4;hpb=7c392af6eab5e06a4836146859cbd9f2c3764420;p=lyx.git diff --git a/src/Mover.cpp b/src/Mover.cpp index 17cb7ba57a..13ee2c81de 100644 --- a/src/Mover.cpp +++ b/src/Mover.cpp @@ -12,9 +12,9 @@ #include "Mover.h" +#include "support/FileName.h" #include "support/filetools.h" #include "support/lstrings.h" -#include "support/lyxlib.h" #include "support/Systemcall.h" #include @@ -26,48 +26,38 @@ using namespace lyx::support; namespace lyx { -bool Mover::copy(FileName const & from, FileName const & to, - unsigned long int mode) const +bool Mover::copy(FileName const & from, FileName const & to) const { - return do_copy(from, to, to.absFilename(), mode); + return do_copy(from, to, to.absFileName()); } bool Mover::do_copy(FileName const & from, FileName const & to, - string const &, unsigned long int mode) const + string const &) const { - return copy(from, to, mode); + return from.copyTo(to); } bool Mover::rename(FileName const & from, FileName const & to) const { - return do_rename(from, to, to.absFilename()); + return do_rename(from, to, to.absFileName()); } bool Mover::do_rename(FileName const & from, FileName const & to, string const &) const { - return rename(from, to); + return from.moveTo(to); } bool SpecialisedMover::do_copy(FileName const & from, FileName const & to, - string const & latex, unsigned long int mode) const + string const & latex) const { if (command_.empty()) - return Mover::do_copy(from, to, latex, mode); - - if (mode != (unsigned long int)-1) { - ofstream ofs(to.toFilesystemEncoding().c_str(), ios::binary | ios::out | ios::trunc); - if (!ofs) - return false; - ofs.close(); - if (!chmod(to, mode)) - return false; - } + return Mover::do_copy(from, to, latex); string command = libScriptSearch(command_); command = subst(command, "$$i", quoteName(from.toFilesystemEncoding())); @@ -85,7 +75,7 @@ bool SpecialisedMover::do_rename(FileName const & from, FileName const & to, if (command_.empty()) return Mover::do_rename(from, to, latex); - if (!do_copy(from, to, latex, (unsigned long int)-1)) + if (!do_copy(from, to, latex)) return false; return from.removeFile(); }