diff --git a/utils.py b/utils.py index c035384..3f21cab 100644 --- a/utils.py +++ b/utils.py @@ -1,5 +1,6 @@ import sys import time +import os def eprint(*args, **kwargs): @@ -25,11 +26,10 @@ def sync_r2_output(r2): Read stuff from the process pipe until it stops being stupid. """ - for i in range(10): - p = r2.process.stdout.read(1) - if len(p) > 0: - break - time.sleep(1) + time.sleep(1) + os.set_blocking(r2.process.stdout.fileno(), False) + p = r2.process.stdout.read(1) + os.set_blocking(r2.process.stdout.fileno(), True) output = r2.cmd(f"?vi 123").strip() if output != "123": raise Exception("R2 state never got synced")