summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--exception.py13
2 files changed, 12 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index f838892e1..1ae5992a7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -12,6 +12,11 @@
2005-10-24 Chris Lumens <clumens@redhat.com>
+ * exception.py (copyExceptionToRemote): Destroy scp dialog.
+ (copyExceptionToFloppy): Pass in dispatch so the floppy part works.
+ (handleException): Don't make scp/floppy errors fatal so the user has
+ another chance to get it right.
+
* instdata.py (InstallData.writeKS): Don't write empty authconfig
line (#171558).
* kickstart.py: Make error reporting more useful with line numbers.
diff --git a/exception.py b/exception.py
index 626354de1..d66c2f97e 100644
--- a/exception.py
+++ b/exception.py
@@ -240,6 +240,7 @@ def copyExceptionToRemote(intf):
(childpid, master) = pty.fork()
if childpid < 0:
log.critical("Could not fork process to run scp")
+ scpWin.pop()
return 2
elif childpid == 0:
# child process - run scp
@@ -252,6 +253,7 @@ def copyExceptionToRemote(intf):
try:
childstatus = scpAuthenticate(master, childpid, password)
except OSError:
+ scpWin.pop()
return 2
os.close(master)
@@ -259,9 +261,10 @@ def copyExceptionToRemote(intf):
if os.WIFEXITED(childstatus) and os.WEXITSTATUS(childstatus) == 0:
return 0
else:
+ scpWin.pop()
return 2
-def copyExceptionToFloppy (intf):
+def copyExceptionToFloppy (intf, dispatch):
# in test mode have save to floppy option just copy to new name
if not flags.setupFilesystems:
try:
@@ -365,7 +368,7 @@ def handleException(dispatch, intf, (type, value, tb)):
pdb.post_mortem (tb)
os.kill(os.getpid(), signal.SIGKILL)
elif rc == 2:
- floppyRc = copyExceptionToFloppy(intf)
+ floppyRc = copyExceptionToFloppy(intf, dispatch)
if floppyRc == 0:
intf.messageWindow(_("Dump Written"),
@@ -379,8 +382,7 @@ def handleException(dispatch, intf, (type, value, tb)):
intf.messageWindow(_("Dump Not Written"),
_("There was a problem writing the system state to the "
"floppy."))
- intf.__del__ ()
- os.kill(os.getpid(), signal.SIGKILL)
+ continue
elif rc == 3:
scpRc = copyExceptionToRemote(intf)
@@ -396,5 +398,4 @@ def handleException(dispatch, intf, (type, value, tb)):
intf.messageWindow(_("Dump Not Written"),
_("There was a problem writing the system state to the "
"remote host."))
- intf.__del__ ()
- os.kill(os.getpid(), signal.SIGKILL)
+ continue