From 6d04320c698ac10bfcbade6a759fd19b715195b8 Mon Sep 17 00:00:00 2001 From: TINNES Julien RD-MAPS-ISS Date: Thu, 23 Jun 2005 00:10:08 -0700 Subject: [PATCH] --- yaml --- r: 2971 b: refs/heads/master c: d9ad7ef1979d65a4200847ec91be5b9ad961eba8 h: refs/heads/master i: 2969: 7d93e0ec3d931492b8392e61307acb79bba75632 2967: 3d1804267893fab39981c70cfcb037315befd6f8 v: v3 --- [refs] | 2 +- trunk/drivers/char/amiserial.c | 18 ++++++++++++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 09197674a584..4125b821ab18 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 17abee3d50685b8ef4e38d37abacf8b650a3a387 +refs/heads/master: d9ad7ef1979d65a4200847ec91be5b9ad961eba8 diff --git a/trunk/drivers/char/amiserial.c b/trunk/drivers/char/amiserial.c index 1dc4259213a6..777bc499bbbd 100644 --- a/trunk/drivers/char/amiserial.c +++ b/trunk/drivers/char/amiserial.c @@ -861,13 +861,18 @@ static void change_speed(struct async_struct *info, static void rs_put_char(struct tty_struct *tty, unsigned char ch) { - struct async_struct *info = (struct async_struct *)tty->driver_data; + struct async_struct *info; unsigned long flags; + if (!tty) + return; + + info = tty->driver_data; + if (serial_paranoia_check(info, tty->name, "rs_put_char")) return; - if (!tty || !info->xmit.buf) + if (!info->xmit.buf) return; local_irq_save(flags); @@ -910,13 +915,18 @@ static void rs_flush_chars(struct tty_struct *tty) static int rs_write(struct tty_struct * tty, const unsigned char *buf, int count) { int c, ret = 0; - struct async_struct *info = (struct async_struct *)tty->driver_data; + struct async_struct *info; unsigned long flags; + if (!tty) + return 0; + + info = tty->driver_data; + if (serial_paranoia_check(info, tty->name, "rs_write")) return 0; - if (!tty || !info->xmit.buf || !tmp_buf) + if (!info->xmit.buf || !tmp_buf) return 0; local_save_flags(flags);