[Cmake-commits] [cmake-commits] david.cole committed NSIS.template.in 1.37 1.38

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Sep 24 14:59:26 EDT 2009


Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv24587/Modules

Modified Files:
	NSIS.template.in 
Log Message:
BUG: Fix issue #8177. Modify the system PATH for all users when requested during an NSIS based installer run. Thanks to Bart Janssens for the patch.


Index: NSIS.template.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/NSIS.template.in,v
retrieving revision 1.37
retrieving revision 1.38
diff -C 2 -d -r1.37 -r1.38
*** NSIS.template.in	16 Jul 2009 15:48:30 -0000	1.37
--- NSIS.template.in	24 Sep 2009 18:59:24 -0000	1.38
***************
*** 252,256 ****
   
    AddToPath_NT:
!     ReadRegStr $1 ${WriteEnvStr_RegKey} "PATH"
      StrCmp $1 "" AddToPath_NTdoIt
        Push $1
--- 252,261 ----
   
    AddToPath_NT:
!     StrCmp $ADD_TO_PATH_ALL_USERS "1" ReadAllKey
!       ReadRegStr $1 ${NT_current_env} "PATH"
!       Goto DoTrim
!     ReadAllKey:
!       ReadRegStr $1 ${NT_all_env} "PATH"
!     DoTrim:
      StrCmp $1 "" AddToPath_NTdoIt
        Push $1
***************
*** 259,263 ****
        StrCpy $0 "$1;$0"
      AddToPath_NTdoIt:
!       WriteRegExpandStr ${WriteEnvStr_RegKey} "PATH" $0
        SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
   
--- 264,273 ----
        StrCpy $0 "$1;$0"
      AddToPath_NTdoIt:
!       StrCmp $ADD_TO_PATH_ALL_USERS "1" WriteAllKey
!         WriteRegExpandStr ${NT_current_env} "PATH" $0
!         Goto DoSend
!       WriteAllKey:
!         WriteRegExpandStr ${NT_all_env} "PATH" $0
!       DoSend:
        SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
   
***************
*** 321,325 ****
   
    unRemoveFromPath_NT:
!     ReadRegStr $1 ${WriteEnvStr_RegKey} "PATH"
      StrCpy $5 $1 1 -1 # copy last char
      StrCmp $5 ";" +2 # if last char != ;
--- 331,340 ----
   
    unRemoveFromPath_NT:
!     StrCmp $ADD_TO_PATH_ALL_USERS "1" unReadAllKey
!       ReadRegStr $1 ${NT_current_env} "PATH"
!       Goto unDoTrim
!     unReadAllKey:
!       ReadRegStr $1 ${NT_all_env} "PATH"
!     unDoTrim:
      StrCpy $5 $1 1 -1 # copy last char
      StrCmp $5 ";" +2 # if last char != ;
***************
*** 343,347 ****
          StrCpy $3 $3 -1 # remove last char
   
!       WriteRegExpandStr ${WriteEnvStr_RegKey} "PATH" $3
        SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
   
--- 358,367 ----
          StrCpy $3 $3 -1 # remove last char
   
!       StrCmp $ADD_TO_PATH_ALL_USERS "1" unWriteAllKey
!         WriteRegExpandStr ${NT_current_env} "PATH" $3
!         Goto unDoSend
!       unWriteAllKey:
!         WriteRegExpandStr ${NT_all_env} "PATH" $3
!       unDoSend:
        SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
   
***************
*** 664,667 ****
--- 684,692 ----
    CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
  
+   ;Read a value from an InstallOptions INI file
+   !insertmacro MUI_INSTALLOPTIONS_READ $DO_NOT_ADD_TO_PATH "NSIS.InstallOptions.ini" "Field 2" "State"
+   !insertmacro MUI_INSTALLOPTIONS_READ $ADD_TO_PATH_ALL_USERS "NSIS.InstallOptions.ini" "Field 3" "State"
+   !insertmacro MUI_INSTALLOPTIONS_READ $ADD_TO_PATH_CURRENT_USER "NSIS.InstallOptions.ini" "Field 4" "State"
+ 
    ; Write special uninstall registry entries
    Push "StartMenu"
***************
*** 689,696 ****
  Section "-Add to path"
    Push $INSTDIR\bin
-   ;Read a value from an InstallOptions INI file
-   !insertmacro MUI_INSTALLOPTIONS_READ $DO_NOT_ADD_TO_PATH "NSIS.InstallOptions.ini" "Field 2" "State"
-   !insertmacro MUI_INSTALLOPTIONS_READ $ADD_TO_PATH_ALL_USERS "NSIS.InstallOptions.ini" "Field 3" "State"
-   !insertmacro MUI_INSTALLOPTIONS_READ $ADD_TO_PATH_CURRENT_USER "NSIS.InstallOptions.ini" "Field 4" "State"
    StrCmp "@CPACK_NSIS_MODIFY_PATH@" "ON" 0 doNotAddToPath
    StrCmp $DO_NOT_ADD_TO_PATH "1" doNotAddToPath 0  
--- 714,717 ----



More information about the Cmake-commits mailing list