summaryrefslogtreecommitdiffstats
path: root/gatchat/gatserver.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2011-02-28 14:29:07 -0600
committerDenis Kenzior <denkenz@gmail.com>2011-02-28 16:13:56 -0600
commit4da1a9318cb48149688dd55135590bd6158eb0fb (patch)
tree241c8ff42d520bf7130d39be02ecec6feed52006 /gatchat/gatserver.c
parent6f8675d7fa9164fe4311b6f14bb211fb5ba098c1 (diff)
downloadofono-4da1a9318cb48149688dd55135590bd6158eb0fb.tar.bz2
gatserver: Exit garbage state on HDLC frame end
Diffstat (limited to 'gatchat/gatserver.c')
-rw-r--r--gatchat/gatserver.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gatchat/gatserver.c b/gatchat/gatserver.c
index f0fcb535..5106efaa 100644
--- a/gatchat/gatserver.c
+++ b/gatchat/gatserver.c
@@ -792,7 +792,8 @@ static enum ParserResult server_feed(GAtServer *server,
break;
case PARSER_STATE_GARBAGE:
- if (byte == s3) {
+ /* Detect CR or HDLC frame marker flag */
+ if (byte == s3 || byte == '~') {
server->parser_state = PARSER_STATE_IDLE;
i += 1;
res = PARSER_RESULT_GARBAGE;