@@ -55,7 +55,6 @@ void UBLOX_AT_CellularStack::UUSORD_URC()
55
55
56
56
socket = find_socket (a);
57
57
if (socket != NULL ) {
58
- socket->rx_avail = true ;
59
58
socket->pending_bytes = b;
60
59
// No debug prints here as they can affect timing
61
60
// and cause data loss in UARTSerial
@@ -76,7 +75,6 @@ void UBLOX_AT_CellularStack::UUSORF_URC()
76
75
77
76
socket = find_socket (a);
78
77
if (socket != NULL ) {
79
- socket->rx_avail = true ;
80
78
socket->pending_bytes = b;
81
79
// No debug prints here as they can affect timing
82
80
// and cause data loss in UARTSerial
@@ -198,7 +196,6 @@ nsapi_size_or_error_t UBLOX_AT_CellularStack::socket_sendto_impl(CellularSocket
198
196
fhs.events = POLLIN;
199
197
int pollCount;
200
198
201
- socket->rx_avail = false ;
202
199
if (socket->proto == NSAPI_UDP) {
203
200
if (size > UBLOX_MAX_PACKET_SIZE) {
204
201
return NSAPI_ERROR_PARAMETER;
@@ -273,9 +270,9 @@ nsapi_size_or_error_t UBLOX_AT_CellularStack::socket_recvfrom_impl(CellularSocke
273
270
int port = 0 ;
274
271
Timer timer;
275
272
276
- if (! socket->rx_avail ) {
273
+ if (socket->pending_bytes == 0 ) {
277
274
_at.process_oob ();
278
- if (! socket->rx_avail ) {
275
+ if (socket->pending_bytes == 0 ) {
279
276
return NSAPI_ERROR_WOULD_BLOCK;
280
277
}
281
278
}
@@ -383,6 +380,7 @@ nsapi_size_or_error_t UBLOX_AT_CellularStack::socket_recvfrom_impl(CellularSocke
383
380
}
384
381
timer.stop ();
385
382
383
+ socket->pending_bytes = 0 ;
386
384
if (!count || (_at.get_last_error () != NSAPI_ERROR_OK)) {
387
385
return NSAPI_ERROR_WOULD_BLOCK;
388
386
} else {
@@ -432,7 +430,7 @@ void UBLOX_AT_CellularStack::clear_socket(CellularSocket * socket)
432
430
{
433
431
if (socket != NULL ) {
434
432
socket->id = SOCKET_UNUSED;
435
- socket->rx_avail = 0 ;
433
+ socket->pending_bytes = 0 ;
436
434
socket->_cb = NULL ;
437
435
socket->_data = NULL ;
438
436
socket->created = false ;
0 commit comments