From 30ba7529f1e58ba2be610a0c2581fa0f3fc23ab3 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Mon, 21 Sep 1998 00:01:26 +0000 Subject: Patch from Eric Norum: I fixed the problems noted by Victor Vengerov. 1) Fix typo in cfsetispeed(). 2) In rtems_termios_open, ensure that args->iop->data1 is set before calling device-specific open routine. --- c/src/exec/libcsupport/src/termios.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'c/src/exec/libcsupport') diff --git a/c/src/exec/libcsupport/src/termios.c b/c/src/exec/libcsupport/src/termios.c index f6b5652e57..f3637d37e3 100644 --- a/c/src/exec/libcsupport/src/termios.c +++ b/c/src/exec/libcsupport/src/termios.c @@ -285,20 +285,15 @@ rtems_termios_open ( tty->termios.c_cc[VWERASE] = '\027'; tty->termios.c_cc[VLNEXT] = '\026'; - /* - * Device-specific open - */ - if (tty->device.firstOpen) - (*tty->device.firstOpen)(major, minor, arg); - /* * Bump name characer */ if (c++ == 'z') c = 'a'; } - tty->refcount++; args->iop->data1 = tty; + if (!tty->refcount++ && tty->device.firstOpen) + (*tty->device.firstOpen)(major, minor, arg); rtems_semaphore_release (ttyMutex); return RTEMS_SUCCESSFUL; } -- cgit v1.2.3