diff --git a/mozilla/cck/driver/WizardMachine.h b/mozilla/cck/driver/WizardMachine.h index 11debb50da7..48ba19da686 100644 --- a/mozilla/cck/driver/WizardMachine.h +++ b/mozilla/cck/driver/WizardMachine.h @@ -27,6 +27,7 @@ #include "WizardMachineDlg.h" #include "WizardTypes.h" + //NODE WizardTree; void CreateRshell(); //extern WIDGET GlobalWidgetArray[1000]; @@ -53,8 +54,8 @@ public: void ExecuteAction(char action); CString replaceVars(char *str); BOOL interpret(CString cmd); - void GoToNextNode(); - void GoToPrevNode(); + BOOL GoToNextNode(); + BOOL GoToPrevNode(); void ExitApp(); BOOL CheckForPreBuiltPath(); FILE* OpenAFile(CString outputFile, CString mode); diff --git a/mozilla/cck/driver/WizardUI.cpp b/mozilla/cck/driver/WizardUI.cpp index 6521d563f65..62c17608c93 100644 --- a/mozilla/cck/driver/WizardUI.cpp +++ b/mozilla/cck/driver/WizardUI.cpp @@ -164,7 +164,8 @@ LRESULT CWizardUI::OnWizardBack() UpdateGlobals(); DestroyCurrentScreenWidgets(); - theApp.GoToPrevNode(); + while (!theApp.GoToPrevNode()) + ; /* do nothing */ prevLock.Unlock(); } @@ -206,7 +207,8 @@ LRESULT CWizardUI::OnWizardNext() UpdateGlobals(); DestroyCurrentScreenWidgets(); - theApp.GoToNextNode(); + while (!theApp.GoToNextNode()) + ; /* do nothing */ nextLock.Unlock(); } @@ -1191,9 +1193,12 @@ void CWizardUI::UpdateGlobals() if (widgetType == "ComboBox") { int selectedIndex = ((CComboBox*)curWidget->control)->GetCurSel(); - char tmpStr[MIN_SIZE]; - ((CComboBox*)curWidget->control)->GetLBText(selectedIndex, tmpStr); - curWidget->value = tmpStr; + if (selectedIndex != -1) + { + char tmpStr[MIN_SIZE]; + ((CComboBox*)curWidget->control)->GetLBText(selectedIndex, tmpStr); + curWidget->value = tmpStr; + } } } }