From 49ca223e9cb7c724decf1e8e1bf41dd725684c0b Mon Sep 17 00:00:00 2001 From: Deomid Ryabkov Date: Tue, 7 Mar 2017 19:04:58 +0200 Subject: [PATCH] Minor memory optimization Release pbuf sooner: after copying data from, before invoking user code PUBLISHED_FROM=b877c96ef602bbca26762b18b9dde17eb880d1f9 --- mongoose.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mongoose.c b/mongoose.c index 1ba3440d..4dadab9b 100644 --- a/mongoose.c +++ b/mongoose.c @@ -13928,15 +13928,15 @@ static void mg_lwip_handle_recv_tcp(struct mg_connection *nc) { return; } pbuf_copy_partial(seg, data, len, cs->rx_offset); - mgos_unlock(); - mg_if_recv_tcp_cb(nc, data, len, 1 /* own */); - mgos_lock(); cs->rx_offset += len; if (cs->rx_offset == cs->rx_chain->len) { cs->rx_chain = pbuf_dechain(cs->rx_chain); pbuf_free(seg); cs->rx_offset = 0; } + mgos_unlock(); + mg_if_recv_tcp_cb(nc, data, len, 1 /* own */); + mgos_lock(); } mgos_unlock();