Skip to content
This repository was archived by the owner on Jan 21, 2025. It is now read-only.

Commit 4837967

Browse files
committed
Introduced macro INVALID_CLOSED_SLOT
1 parent 56ed8c9 commit 4837967

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

src/AsyncTCP.cpp

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ extern "C"{
3939
#include <NetworkInterface.h>
4040
#endif
4141

42+
#define INVALID_CLOSED_SLOT -1
43+
4244
/*
4345
* TCP/IP Event Task
4446
* */
@@ -402,7 +404,7 @@ typedef struct {
402404
static err_t _tcp_output_api(struct tcpip_api_call_data *api_call_msg){
403405
tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg;
404406
msg->err = ERR_CONN;
405-
if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) {
407+
if(msg->closed_slot == INVALID_CLOSED_SLOT || !_closed_slots[msg->closed_slot]) {
406408
msg->err = tcp_output(msg->pcb);
407409
}
408410
return msg->err;
@@ -422,7 +424,7 @@ static esp_err_t _tcp_output(tcp_pcb * pcb, int8_t closed_slot) {
422424
static err_t _tcp_write_api(struct tcpip_api_call_data *api_call_msg){
423425
tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg;
424426
msg->err = ERR_CONN;
425-
if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) {
427+
if(msg->closed_slot == INVALID_CLOSED_SLOT || !_closed_slots[msg->closed_slot]) {
426428
msg->err = tcp_write(msg->pcb, msg->write.data, msg->write.size, msg->write.apiflags);
427429
}
428430
return msg->err;
@@ -445,7 +447,7 @@ static esp_err_t _tcp_write(tcp_pcb * pcb, int8_t closed_slot, const char* data,
445447
static err_t _tcp_recved_api(struct tcpip_api_call_data *api_call_msg){
446448
tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg;
447449
msg->err = ERR_CONN;
448-
if(msg->closed_slot != -1 && !_closed_slots[msg->closed_slot]) {
450+
if(msg->closed_slot != INVALID_CLOSED_SLOT && !_closed_slots[msg->closed_slot]) {
449451
msg->err = 0;
450452
tcp_recved(msg->pcb, msg->received);
451453
}
@@ -467,7 +469,7 @@ static esp_err_t _tcp_recved(tcp_pcb * pcb, int8_t closed_slot, size_t len) {
467469
static err_t _tcp_close_api(struct tcpip_api_call_data *api_call_msg){
468470
tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg;
469471
msg->err = ERR_CONN;
470-
if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) {
472+
if(msg->closed_slot == INVALID_CLOSED_SLOT || !_closed_slots[msg->closed_slot]) {
471473
msg->err = tcp_close(msg->pcb);
472474
}
473475
return msg->err;
@@ -487,7 +489,7 @@ static esp_err_t _tcp_close(tcp_pcb * pcb, int8_t closed_slot) {
487489
static err_t _tcp_abort_api(struct tcpip_api_call_data *api_call_msg){
488490
tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg;
489491
msg->err = ERR_CONN;
490-
if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) {
492+
if(msg->closed_slot == INVALID_CLOSED_SLOT || !_closed_slots[msg->closed_slot]) {
491493
tcp_abort(msg->pcb);
492494
}
493495
return msg->err;
@@ -593,7 +595,7 @@ AsyncClient::AsyncClient(tcp_pcb* pcb)
593595
, next(NULL)
594596
{
595597
_pcb = pcb;
596-
_closed_slot = -1;
598+
_closed_slot = INVALID_CLOSED_SLOT;
597599
if(_pcb){
598600
_rx_last_packet = millis();
599601
tcp_arg(_pcb, this);
@@ -879,29 +881,29 @@ int8_t AsyncClient::_close(){
879881
}
880882

881883
bool AsyncClient::_allocate_closed_slot(){
882-
if (_closed_slot != -1) {
884+
if (_closed_slot != INVALID_CLOSED_SLOT) {
883885
return true;
884886
}
885887
xSemaphoreTake(_slots_lock, portMAX_DELAY);
886888
uint32_t closed_slot_min_index = 0;
887889
for (int i = 0; i < _number_of_closed_slots; ++ i) {
888-
if ((_closed_slot == -1 || _closed_slots[i] <= closed_slot_min_index) && _closed_slots[i] != 0) {
890+
if ((_closed_slot == INVALID_CLOSED_SLOT || _closed_slots[i] <= closed_slot_min_index) && _closed_slots[i] != 0) {
889891
closed_slot_min_index = _closed_slots[i];
890892
_closed_slot = i;
891893
}
892894
}
893-
if (_closed_slot != -1) {
895+
if (_closed_slot != INVALID_CLOSED_SLOT) {
894896
_closed_slots[_closed_slot] = 0;
895897
}
896898
xSemaphoreGive(_slots_lock);
897-
return (_closed_slot != -1);
899+
return (_closed_slot != INVALID_CLOSED_SLOT);
898900
}
899901

900902
void AsyncClient::_free_closed_slot(){
901903
xSemaphoreTake(_slots_lock, portMAX_DELAY);
902-
if (_closed_slot != -1) {
904+
if (_closed_slot != INVALID_CLOSED_SLOT) {
903905
_closed_slots[_closed_slot] = _closed_index;
904-
_closed_slot = -1;
906+
_closed_slot = INVALID_CLOSED_SLOT;
905907
++ _closed_index;
906908
}
907909
xSemaphoreGive(_slots_lock);

0 commit comments

Comments
 (0)