]> git.lyx.org Git - lyx.git/blobdiff - src/support/rename.C
hopefully fix tex2lyx linking.
[lyx.git] / src / support / rename.C
index 7a04be730ab61665adc84705167b03e0a6f02be8..60cf31dc64fdec42b21d0e0a61e76525bd4830a5 100644 (file)
@@ -1,15 +1,36 @@
+/**
+ * \file rename.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
 #include <config.h>
 
+#include "support/lyxlib.h"
+
 #include <cstdio>
 
-#include "support/lyxlib.h"
 
-bool lyx::rename(char const * from, char const * to)
-{
-       return ::rename(from, to) != -1;
-}
+namespace lyx {
 
-bool lyx::rename(string const & from, string const & to)
+
+using std::string;
+
+
+bool lyx::support::rename(string const & from, string const & to)
 {
-       return ::rename(from.c_str(), to.c_str()) != -1;
+       if (::rename(from.c_str(), to.c_str()) == -1)
+               if (copy(from, to)) {
+                       unlink(from);
+                       return true;
+               } else
+                       return false;
+       return true;
 }
+
+
+} // namespace lyx