]> git.eshelyaron.com Git - emacs.git/commitdiff
Make uncache_image slightly more efficient
authorLars Ingebrigtsen <larsi@gnus.org>
Wed, 9 Dec 2020 00:10:04 +0000 (01:10 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Wed, 9 Dec 2020 00:10:04 +0000 (01:10 +0100)
* src/image.c (uncache_image): Extremely minor speed-up: Only
compute the hash once.

src/image.c

index 846f2d1a5b3819c730ed49d4a5a70efd91092aa3..522a4cf7c0f7b6b505d673a0d0d9e7e1c5a84c52 100644 (file)
@@ -1633,12 +1633,13 @@ static void
 uncache_image (struct frame *f, Lisp_Object spec)
 {
   struct image *img;
+  EMACS_UINT hash = sxhash (spec);
 
   /* Because the background colors are based on the current face, we
      can have multiple copies of an image with the same spec. We want
      to remove them all to ensure the user doesn't see an old version
      of the image when the face changes.  */
-  while ((img = search_image_cache (f, spec, sxhash (spec), 0, 0, true)))
+  while ((img = search_image_cache (f, spec, hash, 0, 0, true)))
     {
       free_image (f, img);
       /* As display glyphs may still be referring to the image ID, we