From 340b0a234e3604b30f38a37022c59904008bf528 Mon Sep 17 00:00:00 2001 From: Espressif Systems Date: Tue, 13 Feb 2018 19:35:16 +0800 Subject: [PATCH] fix(lwip): Fix contains more than one tcp pbuf single tx packet Fix TX exist more pbufs after enable LWIP_NETIF_TX_SINGLE_PBUF. internal: 3d5f33f0 --- VERSION | 2 +- lib/liblwip.a | Bin 518164 -> 517508 bytes third_party/lwip/core/tcp_out.c | 2 ++ 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 400aed76..cb821f2f 100644 --- a/VERSION +++ b/VERSION @@ -13,7 +13,7 @@ gwen: gitlab: espconn: 3a998034 freertos: ac047746 - lwip: 3e8cc2ef + lwip: 3c4f800b driver: 7bee5263 mbedtls: 1ac9f1f4 ssl: eefb383a \ No newline at end of file diff --git a/lib/liblwip.a b/lib/liblwip.a index 6101b3efd2d9271e22450b24d79a9a6d5d7bd665..d595d17cea3ba4bd451dbb013b756dfa31725c36 100644 GIT binary patch delta 4984 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 diff --git a/third_party/lwip/core/tcp_out.c b/third_party/lwip/core/tcp_out.c index 778976ca..cd02ea70 100644 --- a/third_party/lwip/core/tcp_out.c +++ b/third_party/lwip/core/tcp_out.c @@ -464,6 +464,7 @@ tcp_write(struct tcp_pcb *pcb, const void *arg, u16_t len, u8_t apiflags) LWIP_ASSERT("inconsistend oversize vs. len", (oversize == 0) || (pos == len)); #endif /* TCP_OVERSIZE */ +#if !LWIP_NETIF_TX_SINGLE_PBUF /* * Phase 2: Chain a new pbuf to the end of pcb->unsent. * @@ -513,6 +514,7 @@ tcp_write(struct tcp_pcb *pcb, const void *arg, u16_t len, u8_t apiflags) pos += seglen; queuelen += pbuf_clen(concat_p); } +#endif /* !LWIP_NETIF_TX_SINGLE_PBUF */ } else { #if TCP_OVERSIZE LWIP_ASSERT("unsent_oversize mismatch (pcb->unsent is NULL)",