aboutsummaryrefslogtreecommitdiffstats
path: root/packaging-tools/bld_module.py
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@theqtcompany.com>2015-10-02 11:13:27 +0200
committerEike Ziller <eike.ziller@theqtcompany.com>2015-10-28 15:55:29 +0000
commit50dce78df8774681c3bb7d9c95ea7d42fb1d6bfb (patch)
treea776c4697a6696441c7e1d1e57c582c78166294f /packaging-tools/bld_module.py
parent54cb5ee517150aa86ee4a27c9d055cef3502f5d8 (diff)
Fix race condition when downloading and extracting Qt
On Windows, using 7zip in parallel to unzip into the same directory regularly fails. It checks whether a directory exists and creates it if not. Creating directories fails if the directory already exists. So, if a different process (e.g. different 7z) creates the directory between the check for existence and the creation, the latter fails. Split the Qt download and extract into a parallel download phase and a sequential extract phase. Change-Id: I2e8f841a467267815ad2338b12cc0f388f8e8e57 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
Diffstat (limited to 'packaging-tools/bld_module.py')
-rwxr-xr-xpackaging-tools/bld_module.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/packaging-tools/bld_module.py b/packaging-tools/bld_module.py
index 085a89068..656e04d62 100755
--- a/packaging-tools/bld_module.py
+++ b/packaging-tools/bld_module.py
@@ -241,8 +241,8 @@ qmakeBinary = os.path.abspath(os.path.join(callerArguments.qt5path, 'bin', 'qmak
if not os.path.lexists(callerArguments.qt5path):
# get Qt
myGetQtBinaryWork = ThreadedWork("get and extract Qt 5 binary")
- bldinstallercommon.add_qt_download(myGetQtBinaryWork, callerArguments.qt5_module_urls,
- callerArguments.qt5path, tempPath, callerArguments)
+ myGetQtBinaryWork.addTaskObject(bldinstallercommon.create_qt_download_task(callerArguments.qt5_module_urls,
+ callerArguments.qt5path, tempPath, callerArguments))
myGetQtBinaryWork.run()
# Save QT_INSTALL_PREFIX