svn commit: r226295 - stable/9/sys/teken

Ed Schouten ed at FreeBSD.org
Wed Oct 12 09:28:10 UTC 2011


Author: ed
Date: Wed Oct 12 09:28:09 2011
New Revision: 226295
URL: http://svn.freebsd.org/changeset/base/226295

Log:
  MFC r226099:
  
    Tab should not blank cells.
  
    It seems I was under the impression that a tab differs from a single
    forward tabulation, namely that it blanks the underlying cells. This
    seems not to be the case. They are identical.
  
    This should fix applications like jove(1) that use tabs instead of
    explicit cursor position setting.
  
    Reported by:  Brett Glass <brett lariat net>
  
  MFC r226183:
  
    Properly use the cursor to bound the position for CUP.
  
    We must take the origin region into account when clamping the cursor
    position.
  
  Approved by:	re@ (kib)

Modified:
  stable/9/sys/teken/teken_subr.h
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/amd64/include/xen/   (props changed)
  stable/9/sys/boot/   (props changed)
  stable/9/sys/boot/i386/efi/   (props changed)
  stable/9/sys/boot/ia64/efi/   (props changed)
  stable/9/sys/boot/ia64/ski/   (props changed)
  stable/9/sys/boot/powerpc/boot1.chrp/   (props changed)
  stable/9/sys/boot/powerpc/ofw/   (props changed)
  stable/9/sys/cddl/contrib/opensolaris/   (props changed)
  stable/9/sys/conf/   (props changed)
  stable/9/sys/contrib/dev/acpica/   (props changed)
  stable/9/sys/contrib/octeon-sdk/   (props changed)
  stable/9/sys/contrib/pf/   (props changed)
  stable/9/sys/contrib/x86emu/   (props changed)

Modified: stable/9/sys/teken/teken_subr.h
==============================================================================
--- stable/9/sys/teken/teken_subr.h	Wed Oct 12 09:21:02 2011	(r226294)
+++ stable/9/sys/teken/teken_subr.h	Wed Oct 12 09:28:09 2011	(r226295)
@@ -325,7 +325,7 @@ teken_subr_cursor_position(teken_t *t, u
 {
 
 	t->t_cursor.tp_row = t->t_originreg.ts_begin + row - 1;
-	if (row >= t->t_originreg.ts_end)
+	if (t->t_cursor.tp_row >= t->t_originreg.ts_end)
 		t->t_cursor.tp_row = t->t_originreg.ts_end - 1;
 
 	t->t_cursor.tp_col = col - 1;
@@ -595,20 +595,7 @@ static void
 teken_subr_horizontal_tab(teken_t *t)
 {
 
-	if (t->t_stateflags & TS_CONS25) {
-		teken_subr_cursor_forward_tabulation(t, 1);
-	} else {
-		teken_rect_t tr;
-
-		tr.tr_begin = t->t_cursor;
-		teken_subr_cursor_forward_tabulation(t, 1);
-		tr.tr_end.tp_row = tr.tr_begin.tp_row + 1;
-		tr.tr_end.tp_col = t->t_cursor.tp_col;
-
-		/* Blank region that we skipped. */
-		if (tr.tr_end.tp_col > tr.tr_begin.tp_col)
-			teken_funcs_fill(t, &tr, BLANK, &t->t_curattr);
-	}
+	teken_subr_cursor_forward_tabulation(t, 1);
 }
 
 static void


More information about the svn-src-all mailing list