]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix last change in 'handle_display_prop'
authorEli Zaretskii <eliz@gnu.org>
Sun, 19 Dec 2021 13:48:30 +0000 (15:48 +0200)
committerEli Zaretskii <eliz@gnu.org>
Sun, 19 Dec 2021 13:48:30 +0000 (15:48 +0200)
* src/xdisp.c (handle_display_prop): Pass the window's buffer to
'display_min_width' and to 'handle_display_spec'.  (Bug#52385)

src/xdisp.c

index 3a1bc1613f73aa9fb11e02f9007d3830eafdf63e..0c35d24c262172b3e297c9eb83e54a10ddb9d380 100644 (file)
@@ -5209,9 +5209,8 @@ find_display_property (Lisp_Object disp, Lisp_Object prop)
     return Qnil;
 }
 
-static
-Lisp_Object get_display_property (ptrdiff_t bufpos, Lisp_Object prop,
-                                 Lisp_Object object)
+static Lisp_Object
+get_display_property (ptrdiff_t bufpos, Lisp_Object prop, Lisp_Object object)
 {
   return find_display_property (Fget_text_property (make_fixnum (bufpos),
                                                    Qdisplay, object),
@@ -5364,6 +5363,10 @@ handle_display_prop (struct it *it)
   propval = get_char_property_and_overlay (make_fixnum (position->charpos),
                                           Qdisplay, object, &overlay);
 
+  /* Rest of the code must have OBJECT be either a string or a buffer.  */
+  if (!STRINGP (it->string))
+    object = it->w->contents;
+
   /* Handle min-width ends. */
   if (!NILP (it->min_width_property)
       && NILP (find_display_property (propval, Qmin_width)))
@@ -5374,9 +5377,6 @@ handle_display_prop (struct it *it)
   /* Now OVERLAY is the overlay that gave us this property, or nil
      if it was a text property.  */
 
-  if (!STRINGP (it->string))
-    object = it->w->contents;
-
   display_replaced = handle_display_spec (it, propval, object, overlay,
                                          position, bufpos,
                                          FRAME_WINDOW_P (it->f));