summaryrefslogtreecommitdiff
path: root/qmake
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2012-11-22 11:59:11 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-11-28 07:26:25 +0100
commitbc97ab6262ec7ba7ab0420cec1d7c713fc9855c1 (patch)
tree5edd7621cc2cd269b597152cc807a14168a74658 /qmake
parent4badd8ed24f4f20e46a6a2c2c9970e5e02ebd520 (diff)
downloadqt4-tools-bc97ab6262ec7ba7ab0420cec1d7c713fc9855c1.tar.gz
qmake: do not exclusively lock files for reading on Windows/MSVC
When sifting through a file to find Q_OBJECT and friends, qmake was locking it for reading and writing (_SH_DENYRW). This breaks parallel builds where multiple qmake instances might want to scan the same file. Changed the sharing constant to _SH_DENYNO, which doesn't lock the file at all. This is consistent with the _sopen_s call in findDeps. Change-Id: I9c0a06db7f580f411e79d9d96dd36a6d705679aa (cherry picked from commit 9cd7eb29f3b216bdac215fb7633b4b51d534d220) Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'qmake')
-rw-r--r--qmake/generators/makefiledeps.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/qmake/generators/makefiledeps.cpp b/qmake/generators/makefiledeps.cpp
index 1de9550b09..30e13e042a 100644
--- a/qmake/generators/makefiledeps.cpp
+++ b/qmake/generators/makefiledeps.cpp
@@ -697,7 +697,7 @@ bool QMakeSourceFileInfo::findMocs(SourceFile *file)
int fd;
#if defined(_MSC_VER) && _MSC_VER >= 1400
if (_sopen_s(&fd, fixPathForFile(file->file, true).local().toLocal8Bit().constData(),
- _O_RDONLY, _SH_DENYRW, _S_IREAD) != 0)
+ _O_RDONLY, _SH_DENYNO, _S_IREAD) != 0)
fd = -1;
#else
fd = open(fixPathForFile(file->file, true).local().toLocal8Bit().constData(), O_RDONLY);