diff options
author | Eli Zaretskii <eliz@gnu.org> | 2014-11-27 18:35:27 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2014-11-27 18:35:27 +0200 |
commit | 6b765b8facbdbb03f28028007885236601652515 (patch) | |
tree | dba78252300efba0732df3468d2ea1ce6679e112 | |
parent | b3910f653938fc8625f4e0c970123e826bbf427e (diff) |
Fix bug #19201 with after-strings not being displayed.
src/xdisp.c (handle_single_display_spec): When ignoring a fringe
bitmap display, reset the ignore_overlay_strings_at_pos_p flag.
(next_element_from_buffer): When done with overlays, reset the
ignore_overlay_strings_at_pos_p flag.
-rw-r--r-- | src/ChangeLog | 7 | ||||
-rw-r--r-- | src/xdisp.c | 12 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 23fd46bd4c..5ecb022002 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2014-11-27 Eli Zaretskii <eliz@gnu.org> + + * xdisp.c (handle_single_display_spec): When ignoring a fringe + bitmap display, reset the ignore_overlay_strings_at_pos_p flag. + (next_element_from_buffer): When done with overlays, reset the + ignore_overlay_strings_at_pos_p flag. (Bug#19201) + 2014-11-25 Eli Zaretskii <eliz@gnu.org> * w32fns.c (Fw32_shell_execute): Convert forward slashes in diff --git a/src/xdisp.c b/src/xdisp.c index 0558aa8099..bd26281803 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -5106,6 +5106,11 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object, iterate_out_of_display_property (it); *position = it->position; } + /* If we were to display this fringe bitmap, + next_element_from_image would have reset this flag. + Do the same, to avoid affecting overlays that + follow. */ + it->ignore_overlay_strings_at_pos_p = 0; return 1; } } @@ -5125,6 +5130,9 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object, iterate_out_of_display_property (it); *position = it->position; } + if (it) + /* Reset this flag like next_element_from_image would. */ + it->ignore_overlay_strings_at_pos_p = 0; return 1; } @@ -8327,6 +8335,10 @@ next_element_from_buffer (struct it *it) unsigned char *p; ptrdiff_t stop; + /* We moved to the next buffer position, so any info about + previously seen overlays is no longer valid. */ + it->ignore_overlay_strings_at_pos_p = 0; + /* Maybe run the redisplay end trigger hook. Performance note: This doesn't seem to cost measurable time. */ if (it->redisplay_end_trigger_charpos |