]> granicus.if.org Git - python/commitdiff
fix for bug [819860]: make sure the buffer gets emptied, even if WEInsert() fails
authorJust van Rossum <just@letterror.com>
Sun, 12 Oct 2003 19:27:24 +0000 (19:27 +0000)
committerJust van Rossum <just@letterror.com>
Sun, 12 Oct 2003 19:27:24 +0000 (19:27 +0000)
Mac/Tools/IDE/PyConsole.py

index e60b138c32b88b7dff64c2bccdfd584d10a804ca..6f398d17c8ee8408c260c27b89f6e04cfb25e7df 100644 (file)
@@ -127,10 +127,12 @@ class ConsoleTextWidget(W.EditText):
                stuff = string.split(self._buf, '\n')
                stuff = string.join(stuff, '\r')
                self.setselection_at_end()
-               self.ted.WEInsert(stuff, None, None)
+               try:
+                       self.ted.WEInsert(stuff, None, None)
+               finally:
+                       self._buf = ""
                selstart, selend = self.getselection()
                self._inputstart = selstart
-               self._buf = ""
                self.ted.WEClearUndo()
                self.updatescrollbars()
                if self._parentwindow.wid.GetWindowPort().QDIsPortBuffered():
@@ -329,8 +331,10 @@ class PyOutput:
                end = self.w.outputtext.ted.WEGetTextLength()
                self.w.outputtext.setselection(end, end)
                self.w.outputtext.ted.WEFeatureFlag(WASTEconst.weFReadOnly, 0)
-               self.w.outputtext.ted.WEInsert(stuff, None, None)
-               self._buf = ""
+               try:
+                       self.w.outputtext.ted.WEInsert(stuff, None, None)
+               finally:
+                       self._buf = ""
                self.w.outputtext.updatescrollbars()
                self.w.outputtext.ted.WEFeatureFlag(WASTEconst.weFReadOnly, 1)
                if self.w.wid.GetWindowPort().QDIsPortBuffered():