diff options
Diffstat (limited to 'src/libs/installer/lib7z_facade.cpp')
-rw-r--r-- | src/libs/installer/lib7z_facade.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libs/installer/lib7z_facade.cpp b/src/libs/installer/lib7z_facade.cpp index 23e0f2775..e987c7571 100644 --- a/src/libs/installer/lib7z_facade.cpp +++ b/src/libs/installer/lib7z_facade.cpp @@ -796,6 +796,13 @@ public: throw SevenZipException(QObject::tr("Could not create softlink at %1") .arg(absFilePath)); } + + // If we have a symlink, bail out after we have linked it to avoid deleting the link. + // CFileBase::Create(...) seems to broken in regard of symlink handling. If the link + // already exists, it simple does an unlink on it. So we can't set time values on the + // symlink in the following code, as COutFile::Open(...) calls former mentioned Create() + // function and thus the symlink is deleted. + return S_OK; #endif } } |