[PATCH] Fix NULL pointer dereference in isdn_tty_at_cout
The changes in the tty related code introduced wrong parenthesis in a if condition in the isdn_tty_at_cout function. This caused access to index -1 in the dev->drv[] array. This patch change it back to the correct condition from the previous versions. Signed-off-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
8b09fb3451
commit
61b9a26ae6
1 changed files with 2 additions and 2 deletions
|
@ -2359,8 +2359,8 @@ isdn_tty_at_cout(char *msg, modem_info * info)
|
||||||
|
|
||||||
/* use queue instead of direct, if online and */
|
/* use queue instead of direct, if online and */
|
||||||
/* data is in queue or buffer is full */
|
/* data is in queue or buffer is full */
|
||||||
if ((info->online && tty_buffer_request_room(tty, l) < l) ||
|
if (info->online && ((tty_buffer_request_room(tty, l) < l) ||
|
||||||
(!skb_queue_empty(&dev->drv[info->isdn_driver]->rpqueue[info->isdn_channel]))) {
|
!skb_queue_empty(&dev->drv[info->isdn_driver]->rpqueue[info->isdn_channel]))) {
|
||||||
skb = alloc_skb(l, GFP_ATOMIC);
|
skb = alloc_skb(l, GFP_ATOMIC);
|
||||||
if (!skb) {
|
if (!skb) {
|
||||||
spin_unlock_irqrestore(&info->readlock, flags);
|
spin_unlock_irqrestore(&info->readlock, flags);
|
||||||
|
|
Loading…
Reference in a new issue