summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
index 18b5cccaaf..75b3b50d14 100644
--- a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
+++ b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
@@ -87,6 +87,7 @@ private slots:
void fileName();
void fileNameIsEmpty();
void autoRemove();
+ void nonWritableCurrentDir();
void write();
void openCloseOpenClose();
void size();
@@ -290,6 +291,22 @@ void tst_QTemporaryFile::autoRemove()
}
+void tst_QTemporaryFile::nonWritableCurrentDir()
+{
+#ifdef Q_OS_UNIX
+ QString cwd = QDir::currentPath();
+ QDir::setCurrent("/");
+ // QTemporaryFile("tempXXXXXX") is probably a bad idea in any app
+ // where the current dir could anything...
+ QString fileName;
+ QTemporaryFile file("tempXXXXXX");
+ file.setAutoRemove(true);
+ QVERIFY(!file.open());
+ fileName = file.fileName();
+ QDir::setCurrent(cwd);
+#endif
+}
+
void tst_QTemporaryFile::write()
{
QByteArray data("OLE\nOLE\nOLE");