emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/emacs-23 r100164: Fix the fix for Bug#6426


From: Chong Yidong
Subject: [Emacs-diffs] /srv/bzr/emacs/emacs-23 r100164: Fix the fix for Bug#6426 (Bug#7210), avoiding frame garbaging loop.
Date: Fri, 05 Nov 2010 14:28:19 -0400
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 100164
committer: Chong Yidong <address@hidden>
branch nick: emacs-23
timestamp: Fri 2010-11-05 14:28:19 -0400
message:
  Fix the fix for Bug#6426 (Bug#7210), avoiding frame garbaging loop.
  * image.c (free_image): Don't garbage the frame here, since this
  function can be called while redisplaying (Bug#7210).
  (uncache_image): Garbage the frame here (Bug#6426).
modified:
  src/ChangeLog
  src/image.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2010-11-04 19:56:50 +0000
+++ b/src/ChangeLog     2010-11-05 18:28:19 +0000
@@ -1,3 +1,9 @@
+2010-11-05  Chong Yidong  <address@hidden>
+
+       * image.c (free_image): Don't garbage the frame here, since this
+       function can be called while redisplaying (Bug#7210).
+       (uncache_image): Garbage the frame here (Bug#6426).
+
 2010-11-04  Chong Yidong  <address@hidden>
 
        * process.c (Fmake_network_process): Don't apply Bug#5173 fix for

=== modified file 'src/image.c'
--- a/src/image.c       2010-06-19 19:43:47 +0000
+++ b/src/image.c       2010-11-05 18:28:19 +0000
@@ -1094,10 +1094,6 @@
       /* Free resources, then free IMG.  */
       img->type->free (f, img);
       xfree (img);
-
-      /* As display glyphs may still be referring to the image ID, we
-        must garbage the frame (Bug#6426).  */
-      SET_FRAME_GARBAGED (f);
     }
 }
 
@@ -1544,7 +1540,12 @@
 {
   struct image *img = search_image_cache (f, spec, sxhash (spec, 0));
   if (img)
-    free_image (f, img);
+    {
+      free_image (f, img);
+      /* As display glyphs may still be referring to the image ID, we
+        must garbage the frame (Bug#6426).  */
+      SET_FRAME_GARBAGED (f);
+    }
 }
 
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]