summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoão Abecasis <joao.abecasis@nokia.com>2011-08-05 10:39:53 +0200
committerQt by Nokia <qt-info@nokia.com>2011-10-21 22:19:56 +0200
commit6d8963971a618fb80cb9aa7b947a6bd7a5946393 (patch)
treee6bcebcc86b14258ea38ae4052ddffc30b740a13
parent56ffec36c655f96c076fd978fb3178114a318f8a (diff)
Make Symbian follow Windows code in temporary path generation
On the one hand, we stop using OpenC here. On the other, we no longer use an atomic create and obtain file handle API -- just as we don't on Windows yet. This is a stepping stone to removing back and forth conversions of path names when generating unique names and also towards the use of native APIs for creating and obtaining a file handle atomically. Reviewed-by: Gareth Stockwell Reviewed-by: Shane Kearns (cherry picked from commit 63bb67d3107b03f399cddf4c9cca9c7eb347b62d) Change-Id: I97b3b6179dff053807acc8d4469fdf57f57f68a6 Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
-rw-r--r--src/corelib/io/qtemporaryfile.cpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/corelib/io/qtemporaryfile.cpp b/src/corelib/io/qtemporaryfile.cpp
index f562298431..5aaabfd14d 100644
--- a/src/corelib/io/qtemporaryfile.cpp
+++ b/src/corelib/io/qtemporaryfile.cpp
@@ -49,12 +49,9 @@
#include "private/qabstractfileengine_p.h"
#include "private/qfsfileengine_p.h"
-#if !defined(Q_OS_WINCE)
-# include <errno.h>
-#endif
-
-#if defined(Q_OS_UNIX)
-# include "private/qcore_unix_p.h" // overrides QT_OPEN
+#if !defined(Q_OS_WIN) && !defined(Q_OS_SYMBIAN)
+#include "private/qcore_unix_p.h" // overrides QT_OPEN
+#include <errno.h>
#endif
#if defined(QT_BUILD_CORE_LIB)
@@ -136,7 +133,7 @@ static int createFileFromTemplate(QByteArray &path, size_t pos, size_t length)
for (;;) {
// Atomically create file and obtain handle
-#ifndef Q_OS_WIN
+#if !defined(Q_OS_WIN) && !defined(Q_OS_SYMBIAN)
{
int fd = QT_OPEN(path.constData(),
QT_OPEN_CREAT | O_EXCL | QT_OPEN_RDWR | QT_OPEN_LARGEFILE,
@@ -303,7 +300,7 @@ bool QTemporaryFileEngine::open(QIODevice::OpenMode openMode)
int fd = createFileFromTemplate(filename, phPos, phLength);
-#ifndef Q_OS_WIN
+#if !defined(Q_OS_WIN) && !defined(Q_OS_SYMBIAN)
if (fd != -1) {
// First open the fd as an external file descriptor to
// initialize the engine properly.