@@ -32,6 +32,15 @@ static const String SharedEmptyString = String();
3232
3333enum { PARSE_REQ_START, PARSE_REQ_HEADERS, PARSE_REQ_BODY, PARSE_REQ_END, PARSE_REQ_FAIL };
3434
35+
36+ namespace {
37+ template <typename T>
38+ static void DEBUG_PRINT (const __FlashStringHelper* str, T arg) {
39+ Serial.print (str); Serial.print (arg); Serial.print (F (" , heap " )); Serial.println (ESP.getFreeHeap ());
40+ }
41+ };
42+
43+
3544AsyncWebServerRequest::AsyncWebServerRequest (AsyncWebServer* s, AsyncClient* c)
3645 : _client(c)
3746 , _server(s)
@@ -69,6 +78,7 @@ AsyncWebServerRequest::AsyncWebServerRequest(AsyncWebServer* s, AsyncClient* c)
6978 , _itemIsFile(false )
7079 , _tempObject(NULL )
7180{
81+ DEBUG_PRINT (F (" WR created " ), (intptr_t )this );
7282 c->onError ([](void *r, AsyncClient* c, int8_t error){ (void )c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onError (error); }, this );
7383 c->onAck ([](void *r, AsyncClient* c, size_t len, uint32_t time){ (void )c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onAck (len, time); }, this );
7484 c->onDisconnect ([](void *r, AsyncClient* c){ AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onDisconnect (); delete c; }, this );
@@ -78,6 +88,8 @@ AsyncWebServerRequest::AsyncWebServerRequest(AsyncWebServer* s, AsyncClient* c)
7888}
7989
8090AsyncWebServerRequest::~AsyncWebServerRequest (){
91+ DEBUG_PRINT (F (" WR destructing " ), (intptr_t )this );
92+
8193 _headers.free ();
8294
8395 _params.free ();
@@ -96,6 +108,8 @@ AsyncWebServerRequest::~AsyncWebServerRequest(){
96108 if (_tempFile){
97109 _tempFile.close ();
98110 }
111+
112+ DEBUG_PRINT (F (" WR destructed " ), (intptr_t )this );
99113}
100114
101115void AsyncWebServerRequest::_onData (void *buf, size_t len){
@@ -569,6 +583,7 @@ void AsyncWebServerRequest::_parseLine(){
569583 if (!_temp.length ()){
570584 // end of headers
571585 _server->_rewriteRequest (this );
586+ DEBUG_PRINT (F (" WR ready " ), (intptr_t ) this );
572587 _server->_attachHandler (this );
573588 _removeNotInterestingHeaders ();
574589 if (_expectingContinue){
0 commit comments