mirror of https://github.com/python/cpython.git
only do this sys.stderr replacing on CPython
This commit is contained in:
parent
5edae7ea5e
commit
bf12cdc24a
|
@ -743,9 +743,11 @@ def generate_matches(self, nodes):
|
|||
else:
|
||||
# The reason for this is that hitting the recursion limit usually
|
||||
# results in some ugly messages about how RuntimeErrors are being
|
||||
# ignored.
|
||||
save_stderr = sys.stderr
|
||||
sys.stderr = StringIO()
|
||||
# ignored. We don't do this on non-CPython implementation because
|
||||
# they don't have this problem.
|
||||
if hasattr(sys, "getrefcount"):
|
||||
save_stderr = sys.stderr
|
||||
sys.stderr = StringIO()
|
||||
try:
|
||||
for count, r in self._recursive_matches(nodes, 0):
|
||||
if self.name:
|
||||
|
@ -759,7 +761,8 @@ def generate_matches(self, nodes):
|
|||
r[self.name] = nodes[:count]
|
||||
yield count, r
|
||||
finally:
|
||||
sys.stderr = save_stderr
|
||||
if hasattr(sys, "getrefcount"):
|
||||
sys.stderr = save_stderr
|
||||
|
||||
def _iterative_matches(self, nodes):
|
||||
"""Helper to iteratively yield the matches."""
|
||||
|
|
Loading…
Reference in New Issue