8-bit buglet in 4.5.0 serial

Aaron J. Grier aaron at frye.com
Thu May 9 21:44:48 UTC 2002


I've been wrestling with termios and 4.5.0 the last couple days, and
just ran across the following buglet:

Index: 0.30/c/src/libchip/serial/ns16550.c
--- 0.30/c/src/libchip/serial/ns16550.c Fri, 29 Sep 2000 20:11:24 -0700 kaben (rtems/V/1_ns16550.c 1.1 664)
+++ 0.31(w)/c/src/libchip/serial/ns16550.c Thu, 09 May 2002 14:17:44 -0700 aaron (rtems/V/1_ns16550.c 1.2 664)
@@ -651,7 +651,7 @@
 {
   unsigned32           pNS16550;
   unsigned char        ucLineStatus;
-  char                 cChar;
+  unsigned char        cChar;
   getRegister_f        getReg;
 
   pNS16550 = Console_Port_Tbl[minor].ulCtrlPort1;

without that small patch, cChar gets sign-extended on m68k, which
results in eaten 8-bit characters further up the call tree.

-- 
  Aaron J. Grier  |   Frye Electronics, Tigard, OR   |  aaron at frye.com



More information about the users mailing list