Skip to content

Commit c78078e

Browse files
committed
AT server.available fix
- don't return clients of other servers this was a major error - only return clients with data available it is how server.available should work - accept all waiting clients (up to max) because not all of them may have data available and we may want to server.print to all
1 parent 65101b8 commit c78078e

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

UNOR4USBBridge/cmds_wifi_netif.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -488,8 +488,9 @@ void CAtHandler::add_cmds_wifi_netif() {
488488
for(int i = 0;i<MAX_CLIENT_AVAILABLE;i++) {
489489
if(!serverClients[i].client) {
490490
serverClients[i].client = serverWiFi[sock]->available();
491+
if(!serverClients[i].client)
492+
break;
491493
serverClients[i].server = sock;
492-
break;
493494
}
494495
}
495496

@@ -498,7 +499,9 @@ void CAtHandler::add_cmds_wifi_netif() {
498499
int end = last_server_client_sock;
499500

500501
do {
501-
if(serverClients[last_server_client_sock].client) {
502+
if(serverClients[last_server_client_sock].client
503+
&& serverClients[last_server_client_sock].server == sock
504+
&& serverClients[last_server_client_sock].client.available() > 0) {
502505
client_sock = last_server_client_sock;
503506
break;
504507
}

0 commit comments

Comments
 (0)