From d935b1d740a1e15c800ce16a2d458e660e32382b Mon Sep 17 00:00:00 2001 From: me-no-dev Date: Fri, 23 Sep 2016 13:48:35 +0300 Subject: [PATCH] close the file if left open and add timeout to clients --- src/WebRequest.cpp | 5 ++++- src/WebServer.cpp | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/WebRequest.cpp b/src/WebRequest.cpp index a93a4d3..83d07c2 100644 --- a/src/WebRequest.cpp +++ b/src/WebRequest.cpp @@ -99,6 +99,9 @@ AsyncWebServerRequest::~AsyncWebServerRequest(){ free(_tempObject); } + if(_tempFile){ + _tempFile.close(); + } } void AsyncWebServerRequest::_onData(void *buf, size_t len){ @@ -208,7 +211,7 @@ void AsyncWebServerRequest::_addParam(AsyncWebParameter *p){ } void AsyncWebServerRequest::_addGetParams(String params){ - int start = 0; + size_t start = 0; while (start < params.length()){ int end = params.indexOf('&', start); if (end < 0) end = params.length(); diff --git a/src/WebServer.cpp b/src/WebServer.cpp index edd16ea..b258359 100644 --- a/src/WebServer.cpp +++ b/src/WebServer.cpp @@ -29,6 +29,7 @@ AsyncWebServer::AsyncWebServer(uint16_t port):_server(port), _rewrites(0), _hand _server.onClient([](void *s, AsyncClient* c){ if(c == NULL) return; + c->setRxTimeout(3); AsyncWebServerRequest *r = new AsyncWebServerRequest((AsyncWebServer*)s, c); if(r == NULL){ c->close(true);