]> git.lyx.org Git - lyx.git/blobdiff - src/LyXRC.cpp
Fix compatibility issue with 64-bit cygwin.
[lyx.git] / src / LyXRC.cpp
index 07ffef1f11e3cbcf1f21e02a2ea335ce29ec4108..2cc0369a631f633b3bc3e3148b2ccc05be5dd3a6 100644 (file)
@@ -40,6 +40,7 @@
 #include "support/lstrings.h"
 #include "support/os.h"
 #include "support/Package.h"
+#include "support/TempFile.h"
 #include "support/userinfo.h"
 
 #include <fstream>
@@ -55,7 +56,9 @@ namespace os = support::os;
 
 namespace {
 
-static unsigned int const LYXRC_FILEFORMAT = 14; // spitz: default_otf_view_format
+// The format should also be updated in configure.py, and conversion code
+// should be added to prefs2prefs_prefs.py.
+static unsigned int const LYXRC_FILEFORMAT = 15; // prannoy: statusbar on/off in full screen
 
 // when adding something to this array keep it sorted!
 LexerKeyword lyxrcTags[] = {
@@ -405,7 +408,8 @@ bool LyXRC::read(FileName const & filename, bool check_format)
                return retval == ReadOK;
 
        LYXERR(Debug::FILES, "Converting LyXRC file to " << LYXRC_FILEFORMAT);
-       FileName const tempfile = FileName::tempName("convert_lyxrc");
+       TempFile tmp("convert_lyxrc");
+       FileName const tempfile = tmp.name();
        bool const success = prefs2prefs(filename, tempfile, false);
        if (!success) {
                LYXERR0 ("Unable to convert " << filename.absFileName() <<
@@ -420,7 +424,6 @@ bool LyXRC::read(FileName const & filename, bool check_format)
                LYXERR(Debug::LYXRC, "Reading '" << tempfile << "'...");
                retval = read(lexrc2, check_format);
        }
-       tempfile.removeFile();
        return retval == ReadOK;
 }
 
@@ -2827,8 +2830,9 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                        break;
        }
        case RC_DEFAULT_OTF_VIEW_FORMAT:
-               if (ignore_system_lyxrc ||
-                   default_otf_view_format != system_lyxrc.default_otf_view_format) {
+        if ((ignore_system_lyxrc ||
+            default_otf_view_format != system_lyxrc.default_otf_view_format)
+            && !default_otf_view_format.empty()) {
                        os << "\\default_otf_view_format " << default_otf_view_format << '\n';
                }
                if (tag != RC_LAST)
@@ -3004,6 +3008,8 @@ void actOnUpdatedPrefs(LyXRC const & lyxrc_orig, LyXRC const & lyxrc_new)
        case LyXRC::RC_PATH_PREFIX:
                if (lyxrc_orig.path_prefix != lyxrc_new.path_prefix) {
                        prependEnvPath("PATH", lyxrc_new.path_prefix);
+                       // Resets python path
+                       support::os::python(true);
                }
        case LyXRC::RC_PREVIEW:
        case LyXRC::RC_PREVIEW_HASHED_LABELS: