commit cbad159ac2de9387e9ef6130568eb2fa97732ad4
Author: Enrico Forestieri <for...@lyx.org>
Date:   Fri Mar 13 00:31:08 2015 +0100

    Make sure a temporary file is always created in the global temporary dir.

diff --git a/src/support/TempFile.cpp b/src/support/TempFile.cpp
index 21559e1..6e5a91d 100644
--- a/src/support/TempFile.cpp
+++ b/src/support/TempFile.cpp
@@ -14,6 +14,7 @@
 
 #include "support/debug.h"
 #include "support/FileName.h"
+#include "support/filetools.h"
 #include "support/Package.h"
 #include "support/qstring_helpers.h"
 
@@ -47,14 +48,16 @@ struct TempFile::Private
 
 TempFile::TempFile(FileName const & temp_dir, string const & mask)
 {
-       QFileInfo tmp_fi(QDir(toqstr(temp_dir.absoluteFilePath())), 
toqstr(mask));
+       QFileInfo tmp_fi(QDir(toqstr(temp_dir.absoluteFilePath())),
+                        toqstr(onlyFileName(mask)));
        d = new Private(tmp_fi.absoluteFilePath());
 }
 
 
 TempFile::TempFile(string const & mask)
 {
-       QFileInfo tmp_fi(QDir(toqstr(package().temp_dir().absoluteFilePath())), 
toqstr(mask));
+       QFileInfo tmp_fi(QDir(toqstr(package().temp_dir().absoluteFilePath())),
+                        toqstr(onlyFileName(mask)));
        d = new Private(tmp_fi.absoluteFilePath());
 }
 
diff --git a/src/support/TempFile.h b/src/support/TempFile.h
index b99ee75..53e91f0 100644
--- a/src/support/TempFile.h
+++ b/src/support/TempFile.h
@@ -33,9 +33,9 @@ class TempFile {
 public:
        /**
         *Create a temporary file with the given mask.
-        * \p mask must be in filesystem encoding, if it contains a
-        * relative path, the template file will be created in the global
-        * temporary directory as given by 'package().temp_dir()'.
+        * \p mask must be in filesystem encoding, the template file
+        * will be created in the global temporary directory as given
+        * by 'package().temp_dir()'.
         * If the mask contains "XXXXXX" this portion will be replaced by
         * a uniquely generated string. If it does not contain this portion,
         * it will be automatically appended using a dot. Therefore, please

Reply via email to