Show More
@@ -80,3 +80,17 b' else:' | |||
|
80 | 80 | Term.cout.flush() |
|
81 | 81 | # Set global flag so that runsource can know that Ctrl-C was hit |
|
82 | 82 | KBINT = True |
|
83 | ||
|
84 | def run_in_frontend(src): | |
|
85 | """ Check if source snippet can be run in the REPL thread, as opposed to GUI mainloop | |
|
86 | ||
|
87 | (to prevent unnecessary hanging of mainloop). | |
|
88 | ||
|
89 | """ | |
|
90 | ||
|
91 | if src.startswith('_ip.system(') and not '\n' in src: | |
|
92 | return True | |
|
93 | return False | |
|
94 | ||
|
95 | ||
|
96 |
@@ -105,7 +105,7 b' class TwistedInteractiveShell(InteractiveShell):' | |||
|
105 | 105 | # in IPython construction) |
|
106 | 106 | |
|
107 | 107 | if (not self.reactor_started or (self.worker_ident is None and not self.first_run) |
|
108 | or self.worker_ident == thread.get_ident()): | |
|
108 | or self.worker_ident == thread.get_ident() or shellglobals.run_in_frontend(source)): | |
|
109 | 109 | InteractiveShell.runcode(self,code) |
|
110 | 110 | return |
|
111 | 111 |
General Comments 0
You need to be logged in to leave comments.
Login now