From 89abd1f58e0c793fac4d191e1b77f1d71244fe4d Mon Sep 17 00:00:00 2001 From: likewise Date: Wed, 8 Sep 2004 22:33:46 +0000 Subject: [PATCH] Do no longer try to free pbuf when TCP_EVENT_RECV() is called without a callback handler, and without packet. The standard HTTP server failed on this (as reported by three users). --- src/include/lwip/tcp.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/lwip/tcp.h b/src/include/lwip/tcp.h index d200e7c3..23fbbbba 100644 --- a/src/include/lwip/tcp.h +++ b/src/include/lwip/tcp.h @@ -375,7 +375,7 @@ err_t lwip_tcp_event(void *arg, struct tcp_pcb *pcb, #define TCP_EVENT_RECV(pcb,p,err,ret) \ if((pcb)->recv != NULL) \ { ret = (pcb)->recv((pcb)->callback_arg,(pcb),(p),(err)); } else { \ - pbuf_free(p); } + if (p) pbuf_free(p); } #define TCP_EVENT_CONNECTED(pcb,err,ret) \ if((pcb)->connected != NULL) \ (ret = (pcb)->connected((pcb)->callback_arg,(pcb),(err)))