From bea482487e67282f2c75f53c7a927c04d52798c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tronel?= Date: Sat, 29 Aug 2026 16:15:47 +0200 Subject: [PATCH] Replace spurious exit call by raising exceptions. --- src/tscut/exceptions.py | 2 +- src/tscut/h264/bitstream.py | 3 ++- src/tscut/tools/mkvtoolnix.py | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/tscut/exceptions.py b/src/tscut/exceptions.py index 84c96b4..bad3b3e 100644 --- a/src/tscut/exceptions.py +++ b/src/tscut/exceptions.py @@ -18,5 +18,5 @@ class ExternalToolError(TSCutError): class InvalidMediaError(TSCutError): """Raised when input media cannot be processed.""" -class UnimplementedFeature(TSCutError): +class UnimplementedFeatureError(TSCutError): """Raised when a rare feature is encountered and not yet implemented""" diff --git a/src/tscut/h264/bitstream.py b/src/tscut/h264/bitstream.py index 1f3f352..adca126 100644 --- a/src/tscut/h264/bitstream.py +++ b/src/tscut/h264/bitstream.py @@ -13,6 +13,7 @@ from math import floor, log from typeguard import typechecked import hexdump +from tscut.exceptions import UnimplementedFeatureError logger = logging.getLogger(__name__) @@ -284,7 +285,7 @@ def write_scaling_list(buf:bytearray, bit_position: int, size, matrix:list[int], bit_position = write_signed_exp_golomb(buf, bit_position, delta) else: logger.error('Not yet implemented') - raise UnimplementedFeature("Optimized scaling list of H264 header is not implemented") + raise UnimplementedFeatureError("Optimized scaling list of H264 header is not implemented") # reverse = deltas.reverse() # compressed = False # while len(reverse)>0: diff --git a/src/tscut/tools/mkvtoolnix.py b/src/tscut/tools/mkvtoolnix.py index f81eb20..277abf6 100644 --- a/src/tscut/tools/mkvtoolnix.py +++ b/src/tscut/tools/mkvtoolnix.py @@ -152,7 +152,7 @@ def change_codec_private_data(mkvinfo_path:str, input_file: IO[bytes], codec_dat if not found: logger.error('Impossible to retrieve the key of codec private data') - exit(-1) + raise InvalidMediaError("") if current_length < future_length: lseek(infd, position+current_data_length, SEEK_SET)