]> git.eshelyaron.com Git - emacs.git/commitdiff
(try_window_id): Display blank lines from the next
authorKenichi Handa <handa@m17n.org>
Thu, 27 Feb 1997 07:45:24 +0000 (07:45 +0000)
committerKenichi Handa <handa@m17n.org>
Thu, 27 Feb 1997 07:45:24 +0000 (07:45 +0000)
line, when xp.bufpos == ZV.  (This bug is introduced by
changes of Mule).
Compare height against xp.vpos instead of xp.bufpos.
(display_mode_line): Avoid error while compiling with
--with-x=no.
(display_text_line): Correct displaying multi-column
binary data.

src/xdisp.c

index e96cf8494cc42ef3242e6c6a3a0ad7270d968a0e..7384985dbc658bd0fc378a7858ba44a2cd8dd3e5 100644 (file)
@@ -2313,7 +2313,7 @@ try_window_id (window)
                   XFASTINT (w->window_end_vpos) + scroll_amount);
 
       /* Before doing any scrolling, verify that point will be on frame. */
-      if (PT > ep.bufpos && !(PT <= xp.bufpos && xp.bufpos < height))
+      if (PT > ep.bufpos && !(PT <= xp.bufpos && xp.vpos < height))
        {
          if (PT <= xp.bufpos)
            {
@@ -2490,7 +2490,11 @@ try_window_id (window)
       val.hpos = xp.hpos;
       val.tab_offset = xp.tab_offset;
       if (pos == ZV)
-       vpos = height + scroll_amount;
+       { /* Display from next line */
+         vpos = height + scroll_amount;
+         val.hpos = lmargin;
+         val.tab_offset = 0;
+       }
       else if (xp.contin && xp.hpos != lmargin)
        {
          val.hpos = xp.prevhpos - width + lmargin;
@@ -2850,7 +2854,9 @@ display_text_line (w, start, vpos, hpos, taboffset, ovstr_done)
           || left_edge->hpos > 0)
         {
           pos = left_edge->bufpos;
-         DEC_POS (pos);        /* MULE: It may be a multi-byte character */
+         /* Since this should not be a valid multibyte character, we
+             can decrease POS by 1.  */
+         pos--;
           hpos = left_edge->prevhpos;
         }
       else
@@ -3645,6 +3651,7 @@ display_mode_line (w)
          ptr[i] = FAST_MAKE_GLYPH (FAST_GLYPH_CHAR (ptr[i]), 1) | padding;
        }
     }
+  else
 #endif
 
   /* Make the mode line inverse video if the entire line
@@ -3653,8 +3660,8 @@ display_mode_line (w)
      or if it is the child of a full width window
      (which implies that that window is split side-by-side
      and the rest of this line is mode lines of the sibling windows).  */
-  else if (WINDOW_FULL_WIDTH_P (w)
-          || WINDOW_FULL_WIDTH_P (XWINDOW (w->parent)))
+  if (WINDOW_FULL_WIDTH_P (w)
+      || WINDOW_FULL_WIDTH_P (XWINDOW (w->parent)))
     FRAME_DESIRED_GLYPHS (f)->highlight[vpos] = mode_line_inverse_video;
 }