summaryrefslogtreecommitdiffstats
path: root/Modules/Internal
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-03-22 12:44:56 (GMT)
committerKitware Robot <kwrobot@kitware.com>2022-03-22 12:45:04 (GMT)
commitc295f4a77e35e719aea65ae2040d7a01f2bf6ece (patch)
tree3757ec4effee2715671fbd829b195acdde87d712 /Modules/Internal
parent22250fd59a5dd47c474580be63ebb7958a36d6de (diff)
parent5d2ceaada8b84990d828e3c98ea4f6418cac9893 (diff)
downloadCMake-c295f4a77e35e719aea65ae2040d7a01f2bf6ece.zip
CMake-c295f4a77e35e719aea65ae2040d7a01f2bf6ece.tar.gz
CMake-c295f4a77e35e719aea65ae2040d7a01f2bf6ece.tar.bz2
Merge topic 'cpack-nsis-fix-uninstall-quoting'
5d2ceaada8 CPack/NSIS: Add support for unquoted (legacy) uninstaller strings b795c96727 CPack/NSIS: Fix uninstall command when run from installer Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7096
Diffstat (limited to 'Modules/Internal')
-rw-r--r--Modules/Internal/CPack/NSIS.template.in8
1 files changed, 5 insertions, 3 deletions
diff --git a/Modules/Internal/CPack/NSIS.template.in b/Modules/Internal/CPack/NSIS.template.in
index e3abf22..23c45c7 100644
--- a/Modules/Internal/CPack/NSIS.template.in
+++ b/Modules/Internal/CPack/NSIS.template.in
@@ -931,9 +931,11 @@ Function .onInit
;Run the uninstaller
uninst:
ClearErrors
- StrLen $2 "\@CPACK_NSIS_UNINSTALL_NAME@.exe"
- StrCpy $3 $0 -$2 # remove "\@CPACK_NSIS_UNINSTALL_NAME@.exe" from UninstallString to get path
- ExecWait '"$0" /S _?=$3' ;Do not copy the uninstaller to a temp file
+ StrCpy $2 $0 1
+ StrCmp '"' $2 0 +3 ; checks if string is quoted (CPack before v3.20.6 did not quote it)
+ ExecWait '$0 /S'
+ Goto +2
+ ExecWait '"$0" /S'
IfErrors uninst_failed inst
uninst_failed: