Hopefully fixed reported issue where the LogicLib EndSelectLabel is not found when using ${Case2} in nested ${Select}s

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6752 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
anders_k 2016-05-23 23:52:30 +00:00
parent 32b9055a38
commit 6bd89cc4c7

View file

@ -664,7 +664,7 @@
!error "Cannot use Case following a CaseElse" !error "Cannot use Case following a CaseElse"
!endif !endif
Goto ${${_Logic}EndSelect} ; Go to EndSelect (Ends the previous Case) Goto ${${_Logic}EndSelect} ; Go to EndSelect (Ends the previous Case)
!define /IfNDef _LogicLib_EndSelectLabelUsed !define /IfNDef _LogicLib_EndSelectLabelUsed_${_Logic}
${${_Logic}Else}: ; Place the Else label ${${_Logic}Else}: ; Place the Else label
!undef ${_Logic}Else ; and remove it !undef ${_Logic}Else ; and remove it
!else !else
@ -753,9 +753,9 @@
!undef ${_Logic}Else ; and remove it !undef ${_Logic}Else ; and remove it
!endif !endif
!ifdef ${_Logic}EndSelect ; This won't be set if there weren't any cases !ifdef ${_Logic}EndSelect ; This won't be set if there weren't any cases
!ifdef _LogicLib_EndSelectLabelUsed ; There is no jump to ${${_Logic}EndSelect}: if there is only one Case !ifdef _LogicLib_EndSelectLabelUsed_${_Logic} ; There is no jump to ${${_Logic}EndSelect}: if there is only one Case
${${_Logic}EndSelect}: ; Place the EndSelect ${${_Logic}EndSelect}: ; Place the EndSelect
!undef _LogicLib_EndSelectLabelUsed !undef _LogicLib_EndSelectLabelUsed_${_Logic}
!endif !endif
!undef ${_Logic}EndSelect ; and remove it !undef ${_Logic}EndSelect ; and remove it
!endif !endif