]> git.eshelyaron.com Git - emacs.git/commitdiff
Merge from origin/emacs-28
authorStefan Kangas <stefan@marxist.se>
Sat, 15 Jan 2022 05:47:59 +0000 (06:47 +0100)
committerStefan Kangas <stefan@marxist.se>
Sat, 15 Jan 2022 05:47:59 +0000 (06:47 +0100)
5990148860 * lisp/simple.el (undo-no-redo): Fix customization group
ac2cdb8a46 * lisp/progmodes/xref.el (xref-file-name-display): Fix doc...
c05864dd25 Avoid another segfault in 'face_at_buffer_position'

1  2 
lisp/progmodes/xref.el
lisp/simple.el
src/xfaces.c

Simple merge
diff --cc lisp/simple.el
Simple merge
diff --cc src/xfaces.c
index 8064d47c9470a597523b786695e24563d645234c,dff5ae346de33e6f780514a8cdd79b0c05ad3f09..e148b5d3987fd1794ed84a2231e553ab7106c344
@@@ -6419,12 -6424,13 +6419,16 @@@ face_at_buffer_position (struct window 
        face_id = lookup_basic_face (w, f, DEFAULT_FACE_ID);
  
      default_face = FACE_FROM_ID_OR_NULL (f, face_id);
 +    /* Make sure the default face ID is usable: if someone freed the
 +       cached faces since we've looked up these faces, we need to look
 +       them up again.  */
      if (!default_face)
-       default_face = FACE_FROM_ID (f,
-                                  lookup_basic_face (w, f, DEFAULT_FACE_ID));
+       {
+       if (FRAME_FACE_CACHE (f)->used == 0)
+         recompute_basic_faces (f);
+       default_face = FACE_FROM_ID (f,
+                                    lookup_basic_face (w, f, DEFAULT_FACE_ID));
+       }
    }
  
    /* Optimize common cases where we can use the default face.  */