diff --git a/libmat2/archive.py b/libmat2/archive.py index 597884648d414761b919c141aed501fd9f28cce0..13f91882e39a4c126a2ee6303630012502d2b2f2 100644 --- a/libmat2/archive.py +++ b/libmat2/archive.py @@ -161,6 +161,7 @@ class ArchiveBasedAbstractParser(abstract.AbstractParser): member_parser, _ = parser_factory.get_parser(full_path) # type: ignore if member_parser: + member_parser.sandbox = self.sandbox local_meta = {**local_meta, **member_parser.get_meta()} if local_meta: @@ -248,6 +249,7 @@ class ArchiveBasedAbstractParser(abstract.AbstractParser): abort = True continue else: + member_parser.sandbox = self.sandbox if member_parser.remove_all() is False: logging.warning("In file %s, something went wrong \ with the cleaning of %s \ diff --git a/libmat2/audio.py b/libmat2/audio.py index 13ed2914da85914484aff1a38eb26d5381e17445..4e447c51ca34ca267553e3dc1c1e0d332ba1a36d 100644 --- a/libmat2/audio.py +++ b/libmat2/audio.py @@ -82,6 +82,7 @@ class FLACParser(MutagenParser): with open(fname, 'wb') as f: f.write(picture.data) p, _ = parser_factory.get_parser(fname) # type: ignore + p.sandbox = self.sandbox # Mypy chokes on ternaries :/ meta[name] = p.get_meta() if p else 'harmful data' # type: ignore os.remove(fname)