diff --git a/Examples/makensis.nsi b/Examples/makensis.nsi
index 4210884d..2dd6f835 100644
--- a/Examples/makensis.nsi
+++ b/Examples/makensis.nsi
@@ -1,7 +1,7 @@
;NSIS Setup Script
!define VER_MAJOR 2
-!define VER_MINOR 0b2
+!define VER_MINOR 0b3
;--------------------------------
;Compile CVS Data Setup
@@ -36,7 +36,7 @@ InstallDirRegKey HKLM SOFTWARE\NSIS ""
;Modern UI Configuration
!define MUI_PRODUCT "NSIS"
- !define MUI_VERSION "2.0b2"
+ !define MUI_VERSION "2.0b3"
!define MUI_NAME "Nullsoft Install System ${MUI_VERSION}" ;Installer name
diff --git a/Source/makenssi.cpp b/Source/makenssi.cpp
index 9cd31941..072aba4c 100644
--- a/Source/makenssi.cpp
+++ b/Source/makenssi.cpp
@@ -1,4 +1,4 @@
-const char *NSIS_VERSION="v2.0b2";
+const char *NSIS_VERSION="v2.0b3";
/*
Nullsoft "SuperPimp" Installation System - makensis.cpp - installer compiler code
diff --git a/Source/script.cpp b/Source/script.cpp
index fc74246b..4e0b8319 100644
--- a/Source/script.cpp
+++ b/Source/script.cpp
@@ -574,12 +574,18 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
}
#endif//!NSIS_SUPPORT_CODECALLBACKS
+ if (k != 4) {
+ *build_last_page_define=0;
+ }
+
if (k) {
// not custom
#ifdef NSIS_SUPPORT_CODECALLBACKS
switch (line.getnumtokens()) {
case 6:
- lstrcpy(build_last_page_define, line.gettoken_str(5));
+ if (k != 4) {
+ lstrcpy(build_last_page_define, line.gettoken_str(5));
+ }
case 5:
if (*line.gettoken_str(4))
p.leavefunc = ns_func.add(line.gettoken_str(4),0);
@@ -660,7 +666,7 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
if (p.showfunc>=0 && k)
SCRIPT_MSG(" (show:%s)", line.gettoken_str(3));
if (p.leavefunc>=0 && k)
- SCRIPT_MSG(" (leave:%s)", line.gettoken_str(3));
+ SCRIPT_MSG(" (leave:%s)", line.gettoken_str(4));
else if (p.caption && !k)
SCRIPT_MSG(" (caption:%s)", line.gettoken_str(3));
#endif
@@ -704,12 +710,18 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
}
#endif//!NSIS_SUPPORT_CODECALLBACKS
+ if (k != 2) {
+ *ubuild_last_page_define=0;
+ }
+
if (k) {
// not custom
#ifdef NSIS_SUPPORT_CODECALLBACKS
switch (line.getnumtokens()) {
case 6:
- lstrcpy(ubuild_last_page_define, line.gettoken_str(5));
+ if (k != 2) {
+ lstrcpy(ubuild_last_page_define, line.gettoken_str(5));
+ }
case 5:
if (*line.gettoken_str(4)) {
if (strnicmp(line.gettoken_str(4),"un.",3)) {
@@ -1310,7 +1322,7 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
if (k == -1) PRINTHELP()
SCRIPT_MSG("XPStyle: %s\n", line.gettoken_str(1));
init_res_editor();
- char* szXPManifest = k ? 0 : "Nullsoft Install System v2.0b2";
+ char* szXPManifest = k ? 0 : "Nullsoft Install System v2.0b3";
res_editor->UpdateResource(MAKEINTRESOURCE(24), MAKEINTRESOURCE(1), MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), (unsigned char*)szXPManifest, k ? 0 : lstrlen(szXPManifest));
}
catch (exception& err) {