summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2022-04-11 12:32:55 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2022-04-11 12:32:55 +0200
commit11080420dd7f2c34bbebf797de6eb4d4a14dae35 (patch)
treec1e95bf5e0944105e3f866c115d7161091e6854d
parent7d5d0abd2d5a29cb1a5ea18298d49690fe60dc6f (diff)
downloademacs-11080420dd7f2c34bbebf797de6eb4d4a14dae35.tar.gz
Improve gif_load error messages
* src/image.c (gif_load): Improve error reporting (bug#54848).
-rw-r--r--src/image.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/image.c b/src/image.c
index e3e540e5e28..3f9111a7093 100644
--- a/src/image.c
+++ b/src/image.c
@@ -8754,10 +8754,21 @@ gif_load (struct frame *f, struct image *img)
rc = DGifSlurp (gif);
if (rc == GIF_ERROR || gif->ImageCount <= 0)
{
- if (NILP (specified_data))
- image_error ("Error reading `%s'", img->spec);
+#if HAVE_GIFERRORSTRING
+ const char *errstr = GifErrorString (gif->Error);
+ if (errstr)
+ if (NILP (specified_data))
+ image_error ("Error reading `%s' (%s)", img->spec,
+ build_string (errstr));
+ else
+ image_error ("Error reading GIF data: %s",
+ build_string (errstr));
else
- image_error ("Error reading GIF data");
+#endif
+ if (NILP (specified_data))
+ image_error ("Error reading `%s'", img->spec);
+ else
+ image_error ("Error reading GIF data");
goto gif_error;
}