summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/lib7z_facade.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/installer/lib7z_facade.cpp')
-rw-r--r--src/libs/installer/lib7z_facade.cpp7
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
}
}