emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-24 6b765b8: Fix bug #19201 with after-strings not be


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-24 6b765b8: Fix bug #19201 with after-strings not being displayed.
Date: Thu, 27 Nov 2014 16:36:22 +0000

branch: emacs-24
commit 6b765b8facbdbb03f28028007885236601652515
Author: Eli Zaretskii <address@hidden>
Date:   Thu Nov 27 18:35:27 2014 +0200

    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.
---
 src/ChangeLog |    7 +++++++
 src/xdisp.c   |   12 ++++++++++++
 2 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/src/ChangeLog b/src/ChangeLog
index 23fd46b..5ecb022 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
+2014-11-27  Eli Zaretskii  <address@hidden>
+
+       * 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  <address@hidden>
 
        * w32fns.c (Fw32_shell_execute): Convert forward slashes in
diff --git a/src/xdisp.c b/src/xdisp.c
index 0558aa8..bd26281 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]