Blame SOURCES/sympy-png-decoder.patch

rdobuilder 8c319e
diff --git a/sympy/printing/preview.py b/sympy/printing/preview.py
rdobuilder 8c319e
index 52085e5e19..f9b1d2dd5c 100644
rdobuilder 8c319e
--- a/sympy/printing/preview.py
rdobuilder 8c319e
+++ b/sympy/printing/preview.py
rdobuilder 8c319e
@@ -27,12 +27,12 @@ def _check_output_no_window(*args, **kwargs):
rdobuilder 8c319e
 def _run_pyglet(fname, fmt):
rdobuilder 8c319e
     from pyglet import window, image, gl
rdobuilder 8c319e
     from pyglet.window import key
rdobuilder 8c319e
+    from pyglet.image.codecs import ImageDecodeException
rdobuilder 8c319e
 
rdobuilder 8c319e
-    if fmt == "png":
rdobuilder 8c319e
-        from pyglet.image.codecs.png import PNGImageDecoder
rdobuilder 8c319e
-        img = image.load(fname, decoder=PNGImageDecoder())
rdobuilder 8c319e
-    else:
rdobuilder 8c319e
-        raise ValueError("pyglet preview works only for 'png' files.")
rdobuilder 8c319e
+    try:
rdobuilder 8c319e
+        img = image.load(fname)
rdobuilder 8c319e
+    except ImageDecodeException:
rdobuilder 8c319e
+        raise ValueError("pyglet preview does not work for '{}' files.".format(fmt))
rdobuilder 8c319e
 
rdobuilder 8c319e
     offset = 25
rdobuilder 8c319e