diff options
author | Aaron Campbell <aaron@cvs.openbsd.org> | 2001-02-04 06:51:15 +0000 |
---|---|---|
committer | Aaron Campbell <aaron@cvs.openbsd.org> | 2001-02-04 06:51:15 +0000 |
commit | a45a27469176e2fe5a4b54dd06420a53b8968524 (patch) | |
tree | ae9ff2e453c4d7c523713de77d9dc3291d7e6c37 /sys/arch | |
parent | e13de9618a383db8e6cab9b59a0ba8d3b82e1b16 (diff) |
Fix an off-by-{1,2,4} error in i386_space_copy(). Console is now working much
more nicely, but not perfect yet.
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/i386/include/bus.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/i386/include/bus.h b/sys/arch/i386/include/bus.h index a2d5fa229d3..9a9bbb59afc 100644 --- a/sys/arch/i386/include/bus.h +++ b/sys/arch/i386/include/bus.h @@ -1,4 +1,4 @@ -/* $OpenBSD: bus.h,v 1.24 2001/02/04 01:49:21 aaron Exp $ */ +/* $OpenBSD: bus.h,v 1.25 2001/02/04 06:51:14 aaron Exp $ */ /* $NetBSD: bus.h,v 1.6 1996/11/10 03:19:25 thorpej Exp $ */ /*- @@ -725,7 +725,7 @@ void bus_space_free __P((bus_space_tag_t t, bus_space_handle_t bsh, #define i386_space_copy(a1, a2, sz, cnt) do { \ int _len = (sz) * (cnt); \ if ((void *)(a2) < ((void *)(a1) + _len)) { \ - a1 += _len; a2 += _len; \ + a1 += (_len - (sz)); a2 += (_len - (sz)); \ switch (sz) { \ case 1: i386_space_copy1(a1,a2,cnt,"movsb","std");break;\ case 2: i386_space_copy1(a1,a2,cnt,"movsw","std");break;\ |