mirror of
https://github.com/python/cpython.git
synced 2025-11-01 06:01:29 +00:00
#14254: merge with 3.3.
This commit is contained in:
commit
1be94cea0f
2 changed files with 14 additions and 2 deletions
|
|
@ -458,6 +458,7 @@ def restart_subprocess(self, with_cwd=False):
|
|||
self.display_no_subprocess_error()
|
||||
return None
|
||||
self.transfer_path(with_cwd=with_cwd)
|
||||
console.stop_readline()
|
||||
# annotate restart in shell window and mark it
|
||||
console.text.delete("iomark", "end-1c")
|
||||
if was_executing:
|
||||
|
|
@ -896,6 +897,7 @@ def get_standard_extension_names(self):
|
|||
canceled = False
|
||||
endoffile = False
|
||||
closing = False
|
||||
_stop_readline_flag = False
|
||||
|
||||
def set_warning_stream(self, stream):
|
||||
global warning_stream
|
||||
|
|
@ -971,8 +973,7 @@ def close(self):
|
|||
parent=self.text)
|
||||
if response is False:
|
||||
return "cancel"
|
||||
if self.reading:
|
||||
self.top.quit()
|
||||
self.stop_readline()
|
||||
self.canceled = True
|
||||
self.closing = True
|
||||
# Wait for poll_subprocess() rescheduling to stop
|
||||
|
|
@ -1030,6 +1031,12 @@ def begin(self):
|
|||
tkinter._default_root = None # 03Jan04 KBK What's this?
|
||||
return True
|
||||
|
||||
def stop_readline(self):
|
||||
if not self.reading: # no nested mainloop to exit.
|
||||
return
|
||||
self._stop_readline_flag = True
|
||||
self.top.quit()
|
||||
|
||||
def readline(self):
|
||||
save = self.reading
|
||||
try:
|
||||
|
|
@ -1037,6 +1044,9 @@ def readline(self):
|
|||
self.top.mainloop() # nested mainloop()
|
||||
finally:
|
||||
self.reading = save
|
||||
if self._stop_readline_flag:
|
||||
self._stop_readline_flag = False
|
||||
return ""
|
||||
line = self.text.get("iomark", "end-1c")
|
||||
if len(line) == 0: # may be EOF if we quit our mainloop with Ctrl-C
|
||||
line = "\n"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue