From f5d9276434c1ab7d16bab8e22d5908a126477240 Mon Sep 17 00:00:00 2001 From: chenyong <1521761801@qq.com> Date: Fri, 3 Aug 2018 16:11:31 +0800 Subject: [PATCH] [net][at] Add AT serial device receive data length judgment. --- components/net/at/src/at_client.c | 6 +++++- components/net/at/src/at_server.c | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/components/net/at/src/at_client.c b/components/net/at/src/at_client.c index c2002d8094..dd866fdcb0 100644 --- a/components/net/at/src/at_client.c +++ b/components/net/at/src/at_client.c @@ -577,7 +577,11 @@ static void client_parser(at_client_t client) static rt_err_t at_client_rx_ind(rt_device_t dev, rt_size_t size) { - rt_sem_release(at_client_local->rx_notice); + if (size > 0) + { + rt_sem_release(at_client_local->rx_notice); + } + return RT_EOK; } diff --git a/components/net/at/src/at_server.c b/components/net/at/src/at_server.c index 639739d9c2..a148a20ab0 100644 --- a/components/net/at/src/at_server.c +++ b/components/net/at/src/at_server.c @@ -433,7 +433,10 @@ __retry: static rt_err_t at_rx_ind(rt_device_t dev, rt_size_t size) { - rt_sem_release(at_server_local->rx_notice); + if (size > 0) + { + rt_sem_release(at_server_local->rx_notice); + } return RT_EOK; }