diff options
| author | HubretXie <[email protected]> | 2018-12-07 19:05:24 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2018-12-07 19:05:24 +0800 |
| commit | 7ac5bd992fe4a07342ca720baff27c53aa30cdff (patch) | |
| tree | 5c14920469ae5496924aebe8487085b3a8caabc7 /components | |
| parent | cd0521d7d2a0217e5a3a89d3b85b59a46595bd6f (diff) | |
Update at_socket.c
Diffstat (limited to 'components')
| -rw-r--r-- | components/net/at/at_socket/at_socket.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/components/net/at/at_socket/at_socket.c b/components/net/at/at_socket/at_socket.c index 84325c1501..80b86f8198 100644 --- a/components/net/at/at_socket/at_socket.c +++ b/components/net/at/at_socket/at_socket.c @@ -715,7 +715,19 @@ __exit: } else { - at_do_event_changes(sock, AT_EVENT_ERROR, RT_TRUE); + /* try to read Legacy data */ + /* receive packet list last transmission of remaining data */ + rt_mutex_take(sock->recv_lock, RT_WAITING_FOREVER); + recv_len = at_recvpkt_get(&(sock->recvpkt_list), (char *)mem, len); + rt_mutex_release(sock->recv_lock); + if(recv_len<=0) + { + at_do_event_changes(sock, AT_EVENT_ERROR, RT_TRUE); + } + else + { + result = recv_len; + } } return result; |
