From fa8f6cb204b4a7200fbdd1e4f5f15327471fd50a Mon Sep 17 00:00:00 2001 From: likewise Date: Tue, 14 Jan 2003 12:54:02 +0000 Subject: [PATCH] Free incoming pbuf's in the TCP event macro if the recv callback is NULL. Fixes bug #2156. --- src/include/lwip/tcp.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/include/lwip/tcp.h b/src/include/lwip/tcp.h index dcd75e30..ea1a265b 100644 --- a/src/include/lwip/tcp.h +++ b/src/include/lwip/tcp.h @@ -323,7 +323,8 @@ struct tcp_pcb_listen { (ret = (pcb)->sent((pcb)->callback_arg,(pcb),(space))) #define TCP_EVENT_RECV(pcb,p,err,ret) \ if((pcb)->recv != NULL) \ - (ret = (pcb)->recv((pcb)->callback_arg,(pcb),(p),(err))) + { ret = (pcb)->recv((pcb)->callback_arg,(pcb),(p),(err)); } else { \ + pbuf_free(p); } #define TCP_EVENT_CONNECTED(pcb,err,ret) \ if((pcb)->connected != NULL) \ (ret = (pcb)->connected((pcb)->callback_arg,(pcb),(err)))