Skip to content

Commit

Permalink
Use unique instance mutex for dmc/d1 installers
Browse files Browse the repository at this point in the history
  • Loading branch information
brad-anderson committed Aug 8, 2014
1 parent 5a84cd6 commit fe95684
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 14 deletions.
14 changes: 7 additions & 7 deletions windows/d1-installer.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -87,12 +87,12 @@ SetCompressor /SOLID lzma
; Macros definition
;------------------------------------------------------------

; Check if a dmd installer instance is already running
; Check if a dmd 1 installer instance is already running
!macro OneInstanceOnly
System::Call 'kernel32::CreateMutexA(i 0, i 0, t "digital_mars_d_compiler_installer") ?e'
System::Call 'kernel32::CreateMutexA(i 0, i 0, t "digital_mars_d1_compiler_installer") ?e'
Pop $R0
StrCmp $R0 0 +3
MessageBox MB_OK|MB_ICONSTOP "An instance of DMD installer is already running"
MessageBox MB_OK|MB_ICONSTOP "An instance of DMD 1 installer is already running"
Abort
!macroend

Expand Down Expand Up @@ -171,7 +171,7 @@ SectionGroup /e "D1"
; Write installation dir in the registry
WriteRegStr HKLM "SOFTWARE\${DName}" "InstallationFolder" "$INSTDIR"

; Registry keys for dmd uninstaller
; Registry keys for dmd 1 uninstaller
WriteRegStr HKLM "${ARP}" "DisplayName" "${DName}"
WriteRegStr HKLM "${ARP}" "DisplayVersion" "${Version1}"
WriteRegStr HKLM "${ARP}" "UninstallString" "$INSTDIR\uninstall.exe"
Expand Down Expand Up @@ -203,7 +203,7 @@ SectionGroupEnd
;--------------------------------------------------------

Function .onInit
; Check if a dmd installer instance is already running
; Check if a dmd 1 installer instance is already running
!insertmacro OneInstanceOnly


Expand All @@ -212,7 +212,7 @@ Function .onInit
StrCmp $R0 "/f" done


; Remove if dmd is already installed
; Remove if dmd 1 is already installed
ReadRegStr $R0 HKLM "${ARP}" "UninstallString"
StrCmp $R0 "" done

Expand Down Expand Up @@ -279,7 +279,7 @@ SectionEnd
;--------------------------------------------------------

Function un.onInit
; Check if a dmd installer instance is already running
; Check if a dmd 1 installer instance is already running
; Do not check if "/IC False" argument is passed to uninstaller
${GetOptions} $CMDLINE "/IC" $InstanceCheck
${IfNot} "$InstanceCheck" == "False"
Expand Down
14 changes: 7 additions & 7 deletions windows/dmc-installer.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -86,12 +86,12 @@ SetCompressor /SOLID lzma
; Macros definition
;------------------------------------------------------------

; Check if a dmd installer instance is already running
; Check if a dmc installer instance is already running
!macro OneInstanceOnly
System::Call 'kernel32::CreateMutexA(i 0, i 0, t "digital_mars_d_compiler_installer") ?e'
System::Call 'kernel32::CreateMutexA(i 0, i 0, t "digital_mars_dmc_compiler_installer") ?e'
Pop $R0
StrCmp $R0 0 +3
MessageBox MB_OK|MB_ICONSTOP "An instance of DMD installer is already running"
MessageBox MB_OK|MB_ICONSTOP "An instance of DMC installer is already running"
Abort
!macroend

Expand Down Expand Up @@ -163,7 +163,7 @@ SectionGroup /e "DMC"
; Write installation dir in the registry
WriteRegStr HKLM "SOFTWARE\${DmcName}" "InstallationFolder" "$INSTDIR"

; Registry keys for dmd uninstaller
; Registry keys for dmc uninstaller
WriteRegStr HKLM "${ARP}" "DisplayName" "${DmcName}"
WriteRegStr HKLM "${ARP}" "DisplayVersion" "${VersionDmc}"
WriteRegStr HKLM "${ARP}" "UninstallString" "$INSTDIR\uninstall.exe"
Expand All @@ -183,7 +183,7 @@ SectionGroupEnd
;--------------------------------------------------------

Function .onInit
; Check if a dmd installer instance is already running
; Check if a dmc installer instance is already running
!insertmacro OneInstanceOnly


Expand All @@ -192,7 +192,7 @@ Function .onInit
StrCmp $R0 "/f" done


; Remove if dmd is already installed
; Remove if dmc is already installed
ReadRegStr $R0 HKLM "${ARP}" "UninstallString"
StrCmp $R0 "" done

Expand Down Expand Up @@ -249,7 +249,7 @@ SectionEnd
;--------------------------------------------------------

Function un.onInit
; Check if a dmd installer instance is already running
; Check if a dmc installer instance is already running
; Do not check if "/IC False" argument is passed to uninstaller
${GetOptions} $CMDLINE "/IC" $InstanceCheck
${IfNot} "$InstanceCheck" == "False"
Expand Down

0 comments on commit fe95684

Please sign in to comment.