diff options
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/xdisp.c | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 06b738e5043..94c5f76a76d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -3,6 +3,11 @@ * xdisp.c (get_it_property): If it->object is a buffer, pass to get-char-property the window that is being rendered, instead of the buffer, to support window-specific overlays. (Bug#14575) + (compute_display_string_pos): When W is NULL, use the current + buffer as the object to pass to get-char-property. + (Fcurrent_bidi_paragraph_direction): Assign NULL to the window + pointer member of the bidi iterator, since no window is pertinent + to this function. 2013-06-08 Eli Zaretskii <eliz@gnu.org> diff --git a/src/xdisp.c b/src/xdisp.c index 2097929128b..5edd4bbbc5f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -3509,9 +3509,8 @@ compute_display_string_pos (struct text_pos *position, if (string && STRINGP (string->lstring)) object1 = object = string->lstring; - else if (!string_p) + else if (w && !string_p) { - eassert (w != NULL); XSETWINDOW (object, w); object1 = Qnil; } @@ -20013,7 +20012,10 @@ See also `bidi-paragraph-direction'. */) itb.string.lstring = Qnil; itb.string.bufpos = 0; itb.string.unibyte = 0; - itb.w = XWINDOW (selected_window); + /* We have no window to use here for ignoring window-specific + overlays. Using NULL for window pointer will cause + compute_display_string_pos to use the current buffer. */ + itb.w = NULL; bidi_paragraph_init (NEUTRAL_DIR, &itb, 1); bidi_unshelve_cache (itb_data, 0); set_buffer_temp (old); |
