diff options
| author | Eli Zaretskii | 2021-12-18 11:03:48 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2021-12-18 11:03:48 +0200 |
| commit | 3fea95b79f7a80fc84f0aee38e1f31234ed7c657 (patch) | |
| tree | 37b06a6c0e2e57d482075775b4fa84abb850d1b2 /src | |
| parent | e5a74c20c399cdcab6115197da4b96eec8d3a345 (diff) | |
| download | emacs-3fea95b79f7a80fc84f0aee38e1f31234ed7c657.tar.gz emacs-3fea95b79f7a80fc84f0aee38e1f31234ed7c657.zip | |
Fix display of window-specific overlays with 'display' property
* src/xdisp.c (handle_display_prop): Pass the window to
'get_char_property_and_overlay', not the buffer. (Bug#52385)
The assignment of the buffer to OBJECT was moved to before
the call to 'get_char_property_and_overlay', for unknown
reasons, as part of installing the support for the
'min-width' space spec.
Diffstat (limited to 'src')
| -rw-r--r-- | src/xdisp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index 5e549c9c63f..e74411c8178 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -5361,9 +5361,6 @@ handle_display_prop (struct it *it) | |||
| 5361 | if (!it->string_from_display_prop_p) | 5361 | if (!it->string_from_display_prop_p) |
| 5362 | it->area = TEXT_AREA; | 5362 | it->area = TEXT_AREA; |
| 5363 | 5363 | ||
| 5364 | if (!STRINGP (it->string)) | ||
| 5365 | object = it->w->contents; | ||
| 5366 | |||
| 5367 | propval = get_char_property_and_overlay (make_fixnum (position->charpos), | 5364 | propval = get_char_property_and_overlay (make_fixnum (position->charpos), |
| 5368 | Qdisplay, object, &overlay); | 5365 | Qdisplay, object, &overlay); |
| 5369 | 5366 | ||
| @@ -5377,6 +5374,9 @@ handle_display_prop (struct it *it) | |||
| 5377 | /* Now OVERLAY is the overlay that gave us this property, or nil | 5374 | /* Now OVERLAY is the overlay that gave us this property, or nil |
| 5378 | if it was a text property. */ | 5375 | if it was a text property. */ |
| 5379 | 5376 | ||
| 5377 | if (!STRINGP (it->string)) | ||
| 5378 | object = it->w->contents; | ||
| 5379 | |||
| 5380 | display_replaced = handle_display_spec (it, propval, object, overlay, | 5380 | display_replaced = handle_display_spec (it, propval, object, overlay, |
| 5381 | position, bufpos, | 5381 | position, bufpos, |
| 5382 | FRAME_WINDOW_P (it->f)); | 5382 | FRAME_WINDOW_P (it->f)); |