emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] trunk r112901: Fix bug #14575 with window-specific overlay


From: Eli Zaretskii
Subject: [Emacs-diffs] trunk r112901: Fix bug #14575 with window-specific overlays with line-prefix or wrap-prefix.
Date: Sun, 09 Jun 2013 16:38:17 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 112901
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/14575
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Sun 2013-06-09 19:37:22 +0300
message:
  Fix bug #14575 with window-specific overlays with line-prefix or wrap-prefix.
  
   src/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.
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-06-08 18:28:36 +0000
+++ b/src/ChangeLog     2013-06-09 16:37:22 +0000
@@ -1,3 +1,9 @@
+2013-06-09  Eli Zaretskii  <address@hidden>
+
+       * 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)
+
 2013-06-08  Eli Zaretskii  <address@hidden>
 
        * bidi.c (bidi_fetch_char): Accept additional argument, the window

=== modified file 'src/xdisp.c'
--- a/src/xdisp.c       2013-06-08 18:28:36 +0000
+++ b/src/xdisp.c       2013-06-09 16:37:22 +0000
@@ -18971,16 +18971,19 @@
 static Lisp_Object
 get_it_property (struct it *it, Lisp_Object prop)
 {
-  Lisp_Object position;
+  Lisp_Object position, object = it->object;
 
-  if (STRINGP (it->object))
+  if (STRINGP (object))
     position = make_number (IT_STRING_CHARPOS (*it));
-  else if (BUFFERP (it->object))
-    position = make_number (IT_CHARPOS (*it));
+  else if (BUFFERP (object))
+    {
+      position = make_number (IT_CHARPOS (*it));
+      XSETWINDOW (object, it->w);
+    }
   else
     return Qnil;
 
-  return Fget_char_property (position, prop, it->object);
+  return Fget_char_property (position, prop, object);
 }
 
 /* See if there's a line- or wrap-prefix, and if so, push it on IT.  */


reply via email to

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