diff src/xdisp.c @ 87453:cdd30283527d

Merge from emacs--rel--22 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-966
author Miles Bader <miles@gnu.org>
date Fri, 28 Dec 2007 22:26:14 +0000
parents ec0ef12211d9 f92febffffdd
children 107ccd98fa12 56a72e2bd635
line wrap: on
line diff
--- a/src/xdisp.c	Fri Dec 28 19:46:56 2007 +0000
+++ b/src/xdisp.c	Fri Dec 28 22:26:14 2007 +0000
@@ -23534,6 +23534,24 @@
 {
   XRectangle cr, result;
   struct glyph *cursor_glyph;
+  struct glyph_row *row;
+
+  if (w->phys_cursor.vpos >= 0
+      && w->phys_cursor.vpos < w->current_matrix->nrows
+      && (row = MATRIX_ROW (w->current_matrix, w->phys_cursor.vpos),
+	  row->enabled_p)
+      && row->cursor_in_fringe_p)
+    {
+      /* Cursor is in the fringe.  */
+      cr.x = window_box_right_offset (w,
+				      (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
+				       ? RIGHT_MARGIN_AREA
+				       : TEXT_AREA));
+      cr.y = row->y;
+      cr.width = WINDOW_RIGHT_FRINGE_WIDTH (w);
+      cr.height = row->height;
+      return x_intersect_rectangles (&cr, r, &result);
+    }
 
   cursor_glyph = get_phys_cursor_glyph (w);
   if (cursor_glyph)