[PATCH] coverity: tty_ldisc_ref return null check

We add a check of the return value of tty_ldisc_ref(), which
is checked 7 out of 8 times, e.g.:

149  		ld = tty_ldisc_ref(tty);
150  		if (ld != NULL) {
151  			if (ld->set_termios)
152  				(ld->set_termios)(tty, &old_termios);
153  			tty_ldisc_deref(ld);
154  		}

This defect was found automatically by Coverity Prevent, a static analysis
tool.

(akpm: presumably `ld' is never NULL.  Oh well)

Signed-off-by: Zaur Kambarov <zkambarov@coverity.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
KAMBAROV, ZAUR 2005-06-28 20:45:12 -07:00 committed by Linus Torvalds
parent c7f1721ef2
commit 69f63c5c34

View File

@ -476,11 +476,11 @@ int n_tty_ioctl(struct tty_struct * tty, struct file * file,
ld = tty_ldisc_ref(tty); ld = tty_ldisc_ref(tty);
switch (arg) { switch (arg) {
case TCIFLUSH: case TCIFLUSH:
if (ld->flush_buffer) if (ld && ld->flush_buffer)
ld->flush_buffer(tty); ld->flush_buffer(tty);
break; break;
case TCIOFLUSH: case TCIOFLUSH:
if (ld->flush_buffer) if (ld && ld->flush_buffer)
ld->flush_buffer(tty); ld->flush_buffer(tty);
/* fall through */ /* fall through */
case TCOFLUSH: case TCOFLUSH: