]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix part 4 of bug#9771 with assertion violation when wrap-prefix is used
authorEli Zaretskii <eliz@gnu.org>
Mon, 17 Oct 2011 17:03:20 +0000 (19:03 +0200)
committerEli Zaretskii <eliz@gnu.org>
Mon, 17 Oct 2011 17:03:20 +0000 (19:03 +0200)
for a line that begins with control characters.

 src/xdisp.c (push_display_prop): Determine whether to record string
 or buffer position by IT->string, not by IT->method.  Allow
 GET_FROM_DISPLAY_VECTOR as IT->method on entry.

src/ChangeLog
src/xdisp.c

index 2c72e97b7f7f31eae54659389970408e1d88c914..53e67a30c38bf563d9757ac47a88b77130e41472 100644 (file)
@@ -1,3 +1,9 @@
+2011-10-17  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (push_display_prop): Determine whether to record string
+       or buffer position by IT->string, not by IT->method.  Allow
+       GET_FROM_DISPLAY_VECTOR as IT->method on entry.  (Bug#9771, part 4)
+
 2011-10-15  Martin Rudalics  <rudalics@gmx.at>
 
        * window.c (coordinates_in_window): Rewrite and delabelize
index 13bb0f79e188a5589f3a8a356b04b2a2f74b73cd..e796eb98f19ac676ce6c742c9de7a027b1c3ac98 100644 (file)
@@ -18427,9 +18427,10 @@ static int
 push_display_prop (struct it *it, Lisp_Object prop)
 {
   struct text_pos pos =
-    (it->method == GET_FROM_STRING) ? it->current.string_pos : it->current.pos;
+    STRINGP (it->string) ? it->current.string_pos : it->current.pos;
 
   xassert (it->method == GET_FROM_BUFFER
+          || it->method == GET_FROM_DISPLAY_VECTOR
           || it->method == GET_FROM_STRING);
 
   /* We need to save the current buffer/string position, so it will be