diff options
Diffstat (limited to 'net/bluetooth/rfcomm')
-rw-r--r-- | net/bluetooth/rfcomm/tty.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/net/bluetooth/rfcomm/tty.c b/net/bluetooth/rfcomm/tty.c index 158a9c46d863..f57cde78c3de 100644 --- a/net/bluetooth/rfcomm/tty.c +++ b/net/bluetooth/rfcomm/tty.c | |||
@@ -480,13 +480,8 @@ static void rfcomm_dev_data_ready(struct rfcomm_dlc *dlc, struct sk_buff *skb) | |||
480 | BT_DBG("dlc %p tty %p len %d", dlc, tty, skb->len); | 480 | BT_DBG("dlc %p tty %p len %d", dlc, tty, skb->len); |
481 | 481 | ||
482 | if (test_bit(TTY_DONT_FLIP, &tty->flags)) { | 482 | if (test_bit(TTY_DONT_FLIP, &tty->flags)) { |
483 | register int i; | 483 | tty_buffer_request_room(tty, skb->len); |
484 | for (i = 0; i < skb->len; i++) { | 484 | tty_insert_flip_string(tty, skb->data, skb->len); |
485 | if (tty->flip.count >= TTY_FLIPBUF_SIZE) | ||
486 | tty_flip_buffer_push(tty); | ||
487 | |||
488 | tty_insert_flip_char(tty, skb->data[i], 0); | ||
489 | } | ||
490 | tty_flip_buffer_push(tty); | 485 | tty_flip_buffer_push(tty); |
491 | } else | 486 | } else |
492 | tty->ldisc.receive_buf(tty, skb->data, NULL, skb->len); | 487 | tty->ldisc.receive_buf(tty, skb->data, NULL, skb->len); |