Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-3]: src/sys/dev/rcons Pull up following revision(s) (requested by...
details: https://anonhg.NetBSD.org/src/rev/8e36f91699ca
branches: netbsd-3
changeset: 577795:8e36f91699ca
user: tron <tron%NetBSD.org@localhost>
date: Mon Jan 30 22:38:51 2006 +0000
description:
Pull up following revision(s) (requested by chs in ticket #1148):
sys/dev/rcons/rcons_subr.c: revision 1.16
avoid checking if an unsigned number is less than 0. fixes PR 29948.
diffstat:
sys/dev/rcons/rcons_subr.c | 33 +++++++++++++--------------------
1 files changed, 13 insertions(+), 20 deletions(-)
diffs (75 lines):
diff -r 6d5dece06f79 -r 8e36f91699ca sys/dev/rcons/rcons_subr.c
--- a/sys/dev/rcons/rcons_subr.c Mon Jan 30 22:36:44 2006 +0000
+++ b/sys/dev/rcons/rcons_subr.c Mon Jan 30 22:38:51 2006 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: rcons_subr.c,v 1.13 2005/02/27 00:27:48 perry Exp $ */
+/* $NetBSD: rcons_subr.c,v 1.13.2.1 2006/01/30 22:38:51 tron Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rcons_subr.c,v 1.13 2005/02/27 00:27:48 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rcons_subr.c,v 1.13.2.1 2006/01/30 22:38:51 tron Exp $");
#include <sys/param.h>
#ifdef _KERNEL
@@ -335,8 +335,9 @@
case 'A':
/* Cursor Up (CUU) */
- rc->rc_row -= rc->rc_p0;
- if (rc->rc_row < 0)
+ if (rc->rc_row >= rc->rc_p0)
+ rc->rc_row -= rc->rc_p0;
+ else
rc->rc_row = 0;
break;
@@ -356,8 +357,9 @@
case 'D':
/* Cursor Backward (CUB) */
- rc->rc_col -= rc->rc_p0;
- if (rc->rc_col < 0)
+ if (rc->rc_col >= rc->rc_p0)
+ rc->rc_col -= rc->rc_p0;
+ else
rc->rc_col = 0;
break;
@@ -373,17 +375,8 @@
/* Horizontal And Vertical Position (HVP) */
case 'H':
/* Cursor Position (CUP) */
- rc->rc_col = rc->rc_p1 - 1;
- if (rc->rc_col < 0)
- rc->rc_col = 0;
- else if (rc->rc_col >= rc->rc_maxcol)
- rc->rc_col = rc->rc_maxcol - 1;
-
- rc->rc_row = rc->rc_p0 - 1;
- if (rc->rc_row < 0)
- rc->rc_row = 0;
- else if (rc->rc_row >= rc->rc_maxrow)
- rc->rc_row = rc->rc_maxrow - 1;
+ rc->rc_col = MIN(MAX(rc->rc_p1, 1), rc->rc_maxcol) - 1;
+ rc->rc_row = MIN(MAX(rc->rc_p0, 1), rc->rc_maxrow) - 1;
break;
case 'J':
@@ -617,9 +610,9 @@
n = rc->rc_maxrow;
/* Calculate new row */
- rc->rc_row -= n;
-
- if (rc->rc_row < 0)
+ if (rc->rc_row >= n)
+ rc->rc_row -= n;
+ else
rc->rc_row = 0;
rc->rc_ops->copyrows(rc->rc_cookie, n, 0, rc->rc_maxrow - n);
Home |
Main Index |
Thread Index |
Old Index