diff src/xdisp.c @ 103601:c466fe42acdc

* xdisp.c (mouse_face_from_buffer_pos): Fix detection of truncation glyphs (Bug#3686).
author Chong Yidong <cyd@stupidchicken.com>
date Sat, 27 Jun 2009 03:50:23 +0000
parents b3c1a923f213
children f9fb01c67183
line wrap: on
line diff
--- a/src/xdisp.c	Sat Jun 27 02:42:05 2009 +0000
+++ b/src/xdisp.c	Sat Jun 27 03:50:23 2009 +0000
@@ -22991,7 +22991,10 @@
 
       /* Skip truncation glyphs at the start of the glyph row.  */
       if (row->displays_text_p)
-	for (; glyph < end && INTEGERP (glyph->object); ++glyph)
+	for (; glyph < end
+	       && INTEGERP (glyph->object)
+	       && glyph->charpos < 0;
+	     ++glyph)
 	  x += glyph->pixel_width;
 
       /* Scan the glyph row, stopping before BEFORE_STRING or
@@ -23039,7 +23042,10 @@
 
   /* Skip truncation glyphs at the start of the row.  */
   if (row->displays_text_p)
-    for (; glyph < end && INTEGERP (glyph->object); ++glyph)
+    for (; glyph < end
+	   && INTEGERP (glyph->object)
+	   && glyph->charpos < 0;
+	 ++glyph)
       x += glyph->pixel_width;
 
   /* Scan the glyph row, stopping at END_CHARPOS or when we encounter