summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2020-12-11 21:16:04 +0100
committerLars Ingebrigtsen <larsi@gnus.org>2020-12-11 21:16:08 +0100
commit711e7bf29cd405a69466feddb5ff9b9a5dfd2a03 (patch)
treee021802fbdff00ced80c7950ce865831d357f76b /src
parent6864dc1dffee558430c8ef8739585dac10a1ee44 (diff)
Fix image-cache-size crash
* src/image.c (image_frame_cache_size): Ensure that img->pixmap is in use before trying to access it.
Diffstat (limited to 'src')
-rw-r--r--src/image.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/image.c b/src/image.c
index 8607b33a7a8..0dd108a96b5 100644
--- a/src/image.c
+++ b/src/image.c
@@ -1795,8 +1795,9 @@ which is then usually a filename. */)
static int
image_frame_cache_size (struct frame *f)
{
- struct image_cache *c = FRAME_IMAGE_CACHE (f);
int total = 0;
+#ifdef USE_CAIRO
+ struct image_cache *c = FRAME_IMAGE_CACHE (f);
if (!c)
return 0;
@@ -1805,12 +1806,11 @@ image_frame_cache_size (struct frame *f)
{
struct image *img = c->images[i];
-#ifdef USE_CAIRO
- if (img)
+ if (img && img->pixmap && img->pixmap != NO_PIXMAP)
total += img->pixmap->width * img->pixmap->height *
img->pixmap->bits_per_pixel / 8;
-#endif
}
+#endif
return total;
}