]> code.delx.au - gnu-emacs/commitdiff
Avoid segfaults due to frame image cache being absent
authorEli Zaretskii <eliz@gnu.org>
Wed, 16 Mar 2016 17:04:16 +0000 (19:04 +0200)
committerEli Zaretskii <eliz@gnu.org>
Wed, 16 Mar 2016 17:04:16 +0000 (19:04 +0200)
* src/image.c (cache_image): If the frame doesn't have an image
cache, create it.  (Bug#23028)

src/image.c

index a44b90b78e7f6b6d1dd4fb77844d68774e4d481c..e8418b840c60bbd6f525aeea68e8b585f2eb72db 100644 (file)
@@ -1830,6 +1830,9 @@ cache_image (struct frame *f, struct image *img)
   struct image_cache *c = FRAME_IMAGE_CACHE (f);
   ptrdiff_t i;
 
+  if (!c)
+    c = FRAME_IMAGE_CACHE (f) = make_image_cache ();
+
   /* Find a free slot in c->images.  */
   for (i = 0; i < c->used; ++i)
     if (c->images[i] == NULL)