made the Reboot command first quit and then reboot

- fixed bug #989690
 - the installer now denies reboots while running
 - the Reboot instruction no longer returns or sets the error flag
 - added .onRebootFailed which is called when Reboot fails
 - installer should now always clean-up when rebooting


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3729 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2004-10-14 13:56:02 +00:00
parent b5cab9b25f
commit 335fd47066
10 changed files with 100 additions and 58 deletions

View file

@ -291,14 +291,15 @@ typedef struct
#ifdef NSIS_CONFIG_ENHANCEDUI_SUPPORT
int code_onGUIInit;
int code_onGUIEnd;
#endif
int code_onVerifyInstDir;
#ifdef NSIS_CONFIG_ENHANCEDUI_SUPPORT
int code_onMouseOverSection;
#endif
#endif//NSIS_CONFIG_ENHANCEDUI_SUPPORT
int code_onVerifyInstDir;
#ifdef NSIS_CONFIG_COMPONENTPAGE
int code_onSelChange;
#endif//NSIS_CONFIG_COMPONENTPAGE
#ifdef NSIS_SUPPORT_REBOOT
int code_onRebootFailed;
#endif//NSIS_SUPPORT_REBOOT
#endif//NSIS_SUPPORT_CODECALLBACKS
#ifdef NSIS_CONFIG_COMPONENTPAGE
@ -320,14 +321,15 @@ enum
#ifdef NSIS_CONFIG_ENHANCEDUI_SUPPORT
CB_ONGUIINIT,
CB_ONGUIEND,
#endif
CB_ONVERIFYINSTDIR,
#ifdef NSIS_CONFIG_ENHANCEDUI_SUPPORT
CB_ONMOUSEOVERSECTION,
#endif
#endif//NSIS_CONFIG_ENHANCEDUI_SUPPORT
CB_ONVERIFYINSTDIR,
#ifdef NSIS_CONFIG_COMPONENTPAGE
CB_ONSELCHANGE
CB_ONSELCHANGE,
#endif//NSIS_CONFIG_COMPONENTPAGE
#ifdef NSIS_SUPPORT_REBOOT
CB_ONREBOOTFAILED
#endif//NSIS_SUPPORT_REBOOT
};
#endif//NSIS_SUPPORT_CODECALLBACKS
@ -459,6 +461,7 @@ typedef struct
int abort;
#ifdef NSIS_SUPPORT_REBOOT
int exec_reboot;
int reboot_called;
#endif
int cur_insttype;
int insttype_changed;