mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-22 22:21:38 +08:00
2006-03-07 Till Strauman <strauman@slac.stanford.edu>
PR 830/filesystem * libcsupport/src/termios.c: termios ioctl(FIONREAD) reported wrong number of characters. So add chars in low-level/raw buffer to total count.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2006-03-07 Till Strauman <strauman@slac.stanford.edu>
|
||||
|
||||
PR 830/filesystem
|
||||
* libcsupport/src/termios.c: termios ioctl(FIONREAD) reported wrong
|
||||
number of characters. So add chars in low-level/raw buffer to total
|
||||
count.
|
||||
|
||||
2006-03-07 Steven Johnson <sjohnson@sakuraindustries.com>
|
||||
|
||||
PR 850/rtems
|
||||
|
||||
@@ -613,8 +613,13 @@ rtems_termios_ioctl (void *arg)
|
||||
break;
|
||||
#endif
|
||||
case FIONREAD:
|
||||
{
|
||||
int rawnc = tty->rawInBuf.Tail - tty->rawInBuf.Head;
|
||||
if ( rawnc < 0 )
|
||||
rawnc += tty->rawInBuf.Size;
|
||||
/* Half guess that this is the right operation */
|
||||
*(int *)args->buffer = tty->ccount - tty->cindex;
|
||||
*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;
|
||||
}
|
||||
break;
|
||||
}
|
||||
rtems_semaphore_release (tty->osem);
|
||||
|
||||
Reference in New Issue
Block a user