diff options
author | David Faure <david.faure@kdab.com> | 2013-07-16 10:25:00 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-07-16 16:28:11 +0200 |
commit | 4315f270e6d553f0c6537617b8efff8988f1f083 (patch) | |
tree | 4b8bff63d0ae85cd554cde57283dc363c323e073 /src | |
parent | aab50ad061dfaff7a0a30a4164163fdd41571270 (diff) |
Fix compilation of QLockFile on Solaris
flock isn't available but we use fcnlt already (which is the recommended
alternative on Solaris)
Change-Id: I718e59c4804950a26eeb610888e17ce666522dcc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/io/qlockfile_unix.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/corelib/io/qlockfile_unix.cpp b/src/corelib/io/qlockfile_unix.cpp index db81d65565..1676b71133 100644 --- a/src/corelib/io/qlockfile_unix.cpp +++ b/src/corelib/io/qlockfile_unix.cpp @@ -86,8 +86,10 @@ int QLockFilePrivate::checkFcntlWorksAfterFlock() if (!file.open()) return 0; const int fd = file.d_func()->engine()->handle(); +#if defined(LOCK_EX) && defined(LOCK_NB) if (flock(fd, LOCK_EX | LOCK_NB) == -1) // other threads, and other processes on a local fs return 0; +#endif struct flock flockData; flockData.l_type = F_WRLCK; flockData.l_whence = SEEK_SET; @@ -121,8 +123,10 @@ static bool fcntlWorksAfterFlock() static bool setNativeLocks(int fd) { +#if defined(LOCK_EX) && defined(LOCK_NB) if (flock(fd, LOCK_EX | LOCK_NB) == -1) // other threads, and other processes on a local fs return false; +#endif struct flock flockData; flockData.l_type = F_WRLCK; flockData.l_whence = SEEK_SET; |