diff --git a/libmat2/images.py b/libmat2/images.py
index da422581ffba1658c2053ea19491e475dd560962..6066b07b2c60a32b96a58303a374d0e1b8ee6c27 100644
--- a/libmat2/images.py
+++ b/libmat2/images.py
@@ -112,7 +112,11 @@ class GdkPixbufAbstractParser(exiftool.ExiftoolParser):
         pixbuf = GdkPixbuf.Pixbuf.new_from_file(self.filename)
         if extension.lower() == '.jpg':
             extension = '.jpeg'  # gdk is picky
-        pixbuf.savev(self.output_filename, type=extension[1:], option_keys=[], option_values=[])
+        try:
+            pixbuf.savev(self.output_filename, type=extension[1:],
+                         option_keys=[], option_values=[])
+        except GLib.GError:  # pragma: no cover
+            return False
         return True