From: Kurt B. Kaiser Date: Mon, 9 Jun 2003 03:12:42 +0000 (+0000) Subject: SF 748975 Printing unsaved shell fails X-Git-Tag: v2.3c1~513 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9067c8d85c4774118675436208cadf59bb048552;p=python SF 748975 Printing unsaved shell fails M IOBinding.py --- diff --git a/Lib/idlelib/IOBinding.py b/Lib/idlelib/IOBinding.py index e2077500c1..0cc9a5f5a6 100644 --- a/Lib/idlelib/IOBinding.py +++ b/Lib/idlelib/IOBinding.py @@ -459,9 +459,12 @@ class IOBinding: def print_window(self, event): tempfilename = None - if self.get_saved(): + saved = self.get_saved() + if saved: filename = self.filename - else: + # shell undo is reset after every prompt, looks saved, probably isn't + if not saved or filename is None: + # XXX KBK 08Jun03 Wouldn't it be better to ask the user to save? filename = tempfilename = tempfile.mktemp() if not self.writefile(filename): os.unlink(tempfilename) @@ -479,6 +482,7 @@ class IOBinding: if printPlatform: #we can try to print for this platform command = command % filename pipe = os.popen(command, "r") + # things can get ugly on NT if there is no printer available. output = pipe.read().strip() status = pipe.close() if status: