diff -Nur -x '*.orig' -x '*.rej' anaconda-10.1.1.37/dispatch.py mezzanine_patched_anaconda-10.1.1.37/dispatch.py --- anaconda-10.1.1.37/dispatch.py 2005-07-09 07:36:02.000000000 +1000 +++ mezzanine_patched_anaconda-10.1.1.37/dispatch.py 2006-04-06 05:34:57.353093046 +1000 @@ -175,7 +175,8 @@ # we can not go backwards from this screen i = self.step - 1 while i >= self.firstStep: - if not self.skipSteps.has_key(installSteps[i][0]): + if (not self.skipSteps.has_key(installSteps[i][0]) + and (type(installSteps[i][1]) != FunctionType)): return 1 i = i - 1 return 0 diff -Nur -x '*.orig' -x '*.rej' anaconda-10.1.1.37/text.py mezzanine_patched_anaconda-10.1.1.37/text.py --- anaconda-10.1.1.37/text.py 2006-04-06 05:37:06.528342370 +1000 +++ mezzanine_patched_anaconda-10.1.1.37/text.py 2006-04-06 05:35:35.058745900 +1000 @@ -506,7 +506,8 @@ "from here. You will have to try " "again."), buttons=[_("OK")]) - dispatch.gotoPrev() + else: + dispatch.gotoPrev() else: dispatch.gotoNext()