From 38eb26f9fa6211e900776e8fe7590dc15890b64e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Hru=C5=A1ka?= Date: Sun, 29 Jan 2023 23:03:29 +0100 Subject: [PATCH] make sendBuffer static part of connData --- spritehttpd/include/httpd-types.h | 2 +- spritehttpd/src/httpd.c | 27 --------------------------- 2 files changed, 1 insertion(+), 28 deletions(-) diff --git a/spritehttpd/include/httpd-types.h b/spritehttpd/include/httpd-types.h index 7ac3063..8ac2be3 100644 --- a/spritehttpd/include/httpd-types.h +++ b/spritehttpd/include/httpd-types.h @@ -89,7 +89,7 @@ struct HttpdPriv { char head[HTTPD_MAX_HEAD_LEN]; char corsToken[HTTPD_MAX_CORS_TOKEN_LEN]; size_t headPos; - uint8_t *sendBuff; + uint8_t sendBuff[HTTPD_MAX_SENDBUFF_LEN]; size_t sendBuffLen; char *chunkHdr; HttpdSendBacklogItem *sendBacklog; diff --git a/spritehttpd/src/httpd.c b/spritehttpd/src/httpd.c index 5014874..4f8cf1d 100644 --- a/spritehttpd/src/httpd.c +++ b/spritehttpd/src/httpd.c @@ -488,8 +488,6 @@ void httpdContinue(HttpdConnData *conn) { httpdPlatLock(); - uint8_t *sendBuff; - if (conn == NULL) { return; } if (conn->priv.sendBacklog != NULL) { @@ -516,13 +514,6 @@ void httpdContinue(HttpdConnData *conn) return; } - sendBuff = httpdMalloc(HTTPD_MAX_SENDBUFF_LEN); - if (sendBuff == NULL) { - http_error("Malloc of sendBuff failed!"); - httpdPlatUnlock(); - return; - } - conn->priv.sendBuff = sendBuff; conn->priv.sendBuffLen = 0; httpd_cgi_state r = conn->cgi(conn); //Execute cgi fn. if (r == HTTPD_CGI_DONE) { @@ -533,7 +524,6 @@ void httpdContinue(HttpdConnData *conn) httpdCgiIsDone(conn); } httpdFlushSendBuffer(conn); - httpdFree(sendBuff); httpdPlatUnlock(); } @@ -732,12 +722,6 @@ static void httpdParseHeader(char *h, HttpdConnData *conn) void httpdConnSendStart(HttpdConnData *conn) { httpdPlatLock(); - uint8_t *sendBuff = httpdMalloc(HTTPD_MAX_SENDBUFF_LEN); - if (sendBuff == NULL) { - http_error("Malloc sendBuff failed!"); - return; - } - conn->priv.sendBuff = sendBuff; conn->priv.sendBuffLen = 0; } @@ -745,8 +729,6 @@ void httpdConnSendStart(HttpdConnData *conn) void httpdConnSendFinish(HttpdConnData *conn) { if (conn->conn) { httpdFlushSendBuffer(conn); } - httpdFree(conn->priv.sendBuff); - conn->priv.sendBuff = NULL; httpdPlatUnlock(); } @@ -764,14 +746,6 @@ void httpdRecvCb(ConnTypePtr rconn, httpd_ipaddr_t remIp, uint16_t remPort, uint return; } - uint8_t *sendBuff = httpdMalloc(HTTPD_MAX_SENDBUFF_LEN); - if (sendBuff == NULL) { - http_error("Malloc sendBuff failed!"); - httpdPlatUnlock(); - return; - } - - conn->priv.sendBuff = sendBuff; conn->priv.sendBuffLen = 0; conn->priv.corsToken[0] = 0; @@ -853,7 +827,6 @@ void httpdRecvCb(ConnTypePtr rconn, httpd_ipaddr_t remIp, uint16_t remPort, uint if (conn->conn) { httpdFlushSendBuffer(conn); } - httpdFree(sendBuff); httpdPlatUnlock(); }