]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid rare crashes in 'uncache_face'
authorEli Zaretskii <eliz@gnu.org>
Tue, 28 May 2024 16:03:00 +0000 (19:03 +0300)
committerEshel Yaron <me@eshelyaron.com>
Wed, 29 May 2024 10:12:01 +0000 (12:12 +0200)
* src/xfaces.c (realize_face): Prevent rare crashes in
'uncache_face' because 'former_face' is NULL (i.e. the face
corresponding to 'former_face_id' is no longer cached).
(Bug#71243)

(cherry picked from commit d9512da49514623ef3e35524dc894c06f2c0ce20)

src/xfaces.c

index 258fbc52e64f35b92f23c8648fb0a5fe9e5ca50c..e305cc7456f291396f48885ceec47778cc975526 100644 (file)
@@ -6057,7 +6057,8 @@ realize_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE],
     {
       /* Remove the former face.  */
       struct face *former_face = cache->faces_by_id[former_face_id];
-      uncache_face (cache, former_face);
+      if (former_face)
+       uncache_face (cache, former_face);
       free_realized_face (cache->f, former_face);
       SET_FRAME_GARBAGED (cache->f);
     }