X Tutup
Skip to content

Commit 58c4be9

Browse files
cleaner approach than .active
1 parent 2e3cd64 commit 58c4be9

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

bpython/cli.py

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,11 @@ def calculate_screen_lines(tokens, width, cursor=0):
117117
pos %= width
118118
return lines
119119

120-
def forward_if_not_active(func):
120+
def forward_if_not_current(func):
121121
@functools.wraps(func)
122122
def newfunc(self, *args, **kwargs):
123-
if self.active:
123+
dest = self.get_dest()
124+
if self is dest:
124125
return func(self, *args, **kwargs)
125126
else:
126127
return getattr(self.get_dest(), newfunc.__name__)(*args, **kwargs)
@@ -134,14 +135,13 @@ class FakeStream(object):
134135
def __init__(self, interface, get_dest):
135136
self.encoding = getpreferredencoding()
136137
self.interface = interface
137-
self.active = True
138138
self.get_dest = get_dest
139139

140-
@forward_if_not_active
140+
@forward_if_not_current
141141
def write(self, s):
142142
self.interface.write(s)
143143

144-
@forward_if_not_active
144+
@forward_if_not_current
145145
def writelines(self, l):
146146
for s in l:
147147
self.write(s)
@@ -1941,8 +1941,6 @@ def main(args=None, locals_=None, banner=None):
19411941
main_curses, exec_args, config, options.interactive, locals_,
19421942
banner=banner)
19431943
finally:
1944-
sys.stderr.active = False
1945-
sys.stdout.active = False
19461944
sys.stdin = orig_stdin
19471945
sys.stderr = orig_stderr
19481946
sys.stdout = orig_stdout

0 commit comments

Comments
 (0)
X Tutup