@@ -32,6 +32,15 @@ static const String SharedEmptyString = String();
32
32
33
33
enum { PARSE_REQ_START, PARSE_REQ_HEADERS, PARSE_REQ_BODY, PARSE_REQ_END, PARSE_REQ_FAIL };
34
34
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
+
35
44
AsyncWebServerRequest::AsyncWebServerRequest (AsyncWebServer* s, AsyncClient* c)
36
45
: _client(c)
37
46
, _server(s)
@@ -69,6 +78,7 @@ AsyncWebServerRequest::AsyncWebServerRequest(AsyncWebServer* s, AsyncClient* c)
69
78
, _itemIsFile(false )
70
79
, _tempObject(NULL )
71
80
{
81
+ DEBUG_PRINT (F (" WR created " ), (intptr_t )this );
72
82
c->onError ([](void *r, AsyncClient* c, int8_t error){ (void )c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onError (error); }, this );
73
83
c->onAck ([](void *r, AsyncClient* c, size_t len, uint32_t time){ (void )c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onAck (len, time); }, this );
74
84
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)
78
88
}
79
89
80
90
AsyncWebServerRequest::~AsyncWebServerRequest (){
91
+ DEBUG_PRINT (F (" WR destructing " ), (intptr_t )this );
92
+
81
93
_headers.free ();
82
94
83
95
_params.free ();
@@ -96,6 +108,8 @@ AsyncWebServerRequest::~AsyncWebServerRequest(){
96
108
if (_tempFile){
97
109
_tempFile.close ();
98
110
}
111
+
112
+ DEBUG_PRINT (F (" WR destructed " ), (intptr_t )this );
99
113
}
100
114
101
115
void AsyncWebServerRequest::_onData (void *buf, size_t len){
@@ -569,6 +583,7 @@ void AsyncWebServerRequest::_parseLine(){
569
583
if (!_temp.length ()){
570
584
// end of headers
571
585
_server->_rewriteRequest (this );
586
+ DEBUG_PRINT (F (" WR ready " ), (intptr_t ) this );
572
587
_server->_attachHandler (this );
573
588
_removeNotInterestingHeaders ();
574
589
if (_expectingContinue){
0 commit comments