diff --git a/dangerzone/isolation_provider/base.py b/dangerzone/isolation_provider/base.py index 04cc7e1d4..4a074a58c 100644 --- a/dangerzone/isolation_provider/base.py +++ b/dangerzone/isolation_provider/base.py @@ -20,7 +20,6 @@ log = logging.getLogger(__name__) -MAX_CONVERSION_LOG_CHARS = 150 * 50 # up to ~150 lines of 50 characters DOC_TO_PIXELS_LOG_START = "----- DOC TO PIXELS LOG START -----" DOC_TO_PIXELS_LOG_END = "----- DOC TO PIXELS LOG END -----" @@ -77,7 +76,7 @@ def read_int(f: IO[bytes]) -> int: return int.from_bytes(untrusted_int, "big", signed=False) -def read_debug_text(text: bytes) -> str: +def sanitize_debug_text(text: bytes) -> str: """Read all the buffer and return a sanitized version""" untrusted_text = text.decode("ascii", errors="replace") return replace_control_chars(untrusted_text, keep_newlines=True) @@ -358,7 +357,7 @@ def doc_to_pixels_proc( stderr_thread.join(timeout=1) debug_bytes = stderr.getvalue() - debug_log = read_debug_text(debug_bytes)[:MAX_CONVERSION_LOG_CHARS] + debug_log = sanitize_debug_text(debug_bytes) incomplete = "(incomplete)\n" if stderr_thread.is_alive() else ""