aboutsummaryrefslogtreecommitdiff
path: root/drivers/isdn/i4l/isdn_tty.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2008-01-04 10:44:17 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-01-04 10:44:17 -0800
commit439f61b9f9ebbf84fb7e6b3539fc3794e046bbb9 (patch)
tree9aeec0e7248175ece16586552bb44655bdcbe028 /drivers/isdn/i4l/isdn_tty.c
parent2022c1f136067f673964dcaffa1cae1008ddcd74 (diff)
parent7fde4d779b83898851959f837c9b26fe07ee91c9 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: [ISDN]: i4l: Fix DLE handling for i4l-audio [ISDN] i4l: 'NO CARRIER' message lost after ldisc flush [CONNECTOR]: Return proper error code in cn_call_callback() [INET]: Fix netdev renaming and inet address labels [CASSINI]: Bump driver version and release date. [CASSINI]: Fix two obvious NAPI bugs. [CASSINI]: Set skb->truesize properly on receive packets. [CASSINI]: Program parent Intel31154 bridge when necessary. [CASSINI]: Revert 'dont touch page_count'. [CASSINI]: Fix endianness bug. [XFRM]: Do not define km_migrate() if !CONFIG_XFRM_MIGRATE [X25]: Add missing x25_neigh_put
Diffstat (limited to 'drivers/isdn/i4l/isdn_tty.c')
-rw-r--r--drivers/isdn/i4l/isdn_tty.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
index 4e5f87c1e71..9cb6e5021ad 100644
--- a/drivers/isdn/i4l/isdn_tty.c
+++ b/drivers/isdn/i4l/isdn_tty.c
@@ -85,6 +85,8 @@ isdn_tty_try_read(modem_info * info, struct sk_buff *skb)
tty_insert_flip_char(tty, DLE, 0);
tty_insert_flip_char(tty, *dp++, 0);
}
+ if (*dp == DLE)
+ tty_insert_flip_char(tty, DLE, 0);
last = *dp;
} else {
#endif
@@ -2645,7 +2647,12 @@ isdn_tty_modem_result(int code, modem_info * info)
if ((info->flags & ISDN_ASYNC_CLOSING) || (!info->tty)) {
return;
}
+#ifdef CONFIG_ISDN_AUDIO
+ if ( !info->vonline )
+ tty_ldisc_flush(info->tty);
+#else
tty_ldisc_flush(info->tty);
+#endif
if ((info->flags & ISDN_ASYNC_CHECK_CD) &&
(!((info->flags & ISDN_ASYNC_CALLOUT_ACTIVE) &&
(info->flags & ISDN_ASYNC_CALLOUT_NOHUP)))) {