@@ -54,6 +54,7 @@ ESP8266WebServerTemplate<ServerType>::ESP8266WebServerTemplate(IPAddress addr, i
54
54
, _lastHandler(nullptr )
55
55
, _currentArgCount(0 )
56
56
, _currentArgs(nullptr )
57
+ , _currentArgsHavePlain(0 )
57
58
, _postArgsLen(0 )
58
59
, _postArgs(nullptr )
59
60
, _headerKeysCount(0 )
@@ -76,6 +77,7 @@ ESP8266WebServerTemplate<ServerType>::ESP8266WebServerTemplate(int port)
76
77
, _lastHandler(nullptr )
77
78
, _currentArgCount(0 )
78
79
, _currentArgs(nullptr )
80
+ , _currentArgsHavePlain(0 )
79
81
, _postArgsLen(0 )
80
82
, _postArgs(nullptr )
81
83
, _headerKeysCount(0 )
@@ -565,7 +567,7 @@ const String& ESP8266WebServerTemplate<ServerType>::arg(const String& name) cons
565
567
if ( _postArgs[j].key == name )
566
568
return _postArgs[j].value ;
567
569
}
568
- for (int i = 0 ; i < _currentArgCount; ++i) {
570
+ for (int i = 0 ; i < _currentArgCount + _currentArgsHavePlain ; ++i) {
569
571
if ( _currentArgs[i].key == name )
570
572
return _currentArgs[i].value ;
571
573
}
@@ -574,14 +576,14 @@ const String& ESP8266WebServerTemplate<ServerType>::arg(const String& name) cons
574
576
575
577
template <typename ServerType>
576
578
const String& ESP8266WebServerTemplate<ServerType>::arg(int i) const {
577
- if (i >= 0 && i < _currentArgCount)
579
+ if (i >= 0 && i < _currentArgCount + _currentArgsHavePlain )
578
580
return _currentArgs[i].value ;
579
581
return emptyString;
580
582
}
581
583
582
584
template <typename ServerType>
583
585
const String& ESP8266WebServerTemplate<ServerType>::argName(int i) const {
584
- if (i >= 0 && i < _currentArgCount)
586
+ if (i >= 0 && i < _currentArgCount + _currentArgsHavePlain )
585
587
return _currentArgs[i].key ;
586
588
return emptyString;
587
589
}
@@ -597,7 +599,7 @@ bool ESP8266WebServerTemplate<ServerType>::hasArg(const String& name) const {
597
599
if (_postArgs[j].key == name)
598
600
return true ;
599
601
}
600
- for (int i = 0 ; i < _currentArgCount; ++i) {
602
+ for (int i = 0 ; i < _currentArgCount + _currentArgsHavePlain ; ++i) {
601
603
if (_currentArgs[i].key == name)
602
604
return true ;
603
605
}
0 commit comments