diff --git a/libmat2/abstract.py b/libmat2/abstract.py
index c531fbdf51a1b9dad956cd34fd793cdfee6fb680..adf384adc8188f6a61752aee6d964703eb237f4e 100644
--- a/libmat2/abstract.py
+++ b/libmat2/abstract.py
@@ -34,7 +34,10 @@ class AbstractParser(abc.ABC):
 
     @abc.abstractmethod
     def get_meta(self) -> Dict[str, Union[str, Dict]]:
-        """Return all the metadata of the current file"""
+        """Return all the metadata of the current file
+
+        :raises RuntimeError: Raised if the cleaning process went wrong.
+        """
 
     @abc.abstractmethod
     def remove_all(self) -> bool:
diff --git a/libmat2/audio.py b/libmat2/audio.py
index 4e447c51ca34ca267553e3dc1c1e0d332ba1a36d..2029d9c0da4a28eb7fd0d34423118180c6660e6d 100644
--- a/libmat2/audio.py
+++ b/libmat2/audio.py
@@ -82,6 +82,8 @@ class FLACParser(MutagenParser):
             with open(fname, 'wb') as f:
                 f.write(picture.data)
             p, _ = parser_factory.get_parser(fname)  # type: ignore
+            if p is None:
+                raise ValueError
             p.sandbox = self.sandbox
             # Mypy chokes on ternaries :/
             meta[name] = p.get_meta() if p else 'harmful data'  # type: ignore