@@ -37,47 +37,12 @@ static const char Content_Length[] PROGMEM = "Content-Length";
37
37
template <typename ServerType>
38
38
ESP8266WebServerTemplate<ServerType>::ESP8266WebServerTemplate(IPAddress addr, int port)
39
39
: _server(addr, port)
40
- , _currentMethod(HTTP_ANY)
41
- , _currentVersion(0 )
42
- , _currentStatus(HC_NONE)
43
- , _statusChange(0 )
44
- , _keepAlive(false )
45
- , _currentHandler(nullptr )
46
- , _firstHandler(nullptr )
47
- , _lastHandler(nullptr )
48
- , _currentArgCount(0 )
49
- , _currentArgs(nullptr )
50
- , _currentArgsHavePlain(0 )
51
- , _postArgsLen(0 )
52
- , _postArgs(nullptr )
53
- , _headerKeysCount(0 )
54
- , _currentHeaders(nullptr )
55
- , _contentLength(0 )
56
- , _chunked(false )
57
- , _corsEnabled(false )
58
40
{
59
41
}
60
42
61
43
template <typename ServerType>
62
44
ESP8266WebServerTemplate<ServerType>::ESP8266WebServerTemplate(int port)
63
45
: _server(port)
64
- , _currentMethod(HTTP_ANY)
65
- , _currentVersion(0 )
66
- , _currentStatus(HC_NONE)
67
- , _statusChange(0 )
68
- , _currentHandler(nullptr )
69
- , _firstHandler(nullptr )
70
- , _lastHandler(nullptr )
71
- , _currentArgCount(0 )
72
- , _currentArgs(nullptr )
73
- , _currentArgsHavePlain(0 )
74
- , _postArgsLen(0 )
75
- , _postArgs(nullptr )
76
- , _headerKeysCount(0 )
77
- , _currentHeaders(nullptr )
78
- , _contentLength(0 )
79
- , _chunked(false )
80
- , _corsEnabled(false )
81
46
{
82
47
}
83
48
@@ -587,97 +552,101 @@ const String& ESP8266WebServerTemplate<ServerType>::pathArg(unsigned int i) cons
587
552
588
553
template <typename ServerType>
589
554
const String& ESP8266WebServerTemplate<ServerType>::arg(const String& name) const {
590
- for (int j = 0 ; j < _postArgsLen; ++j) {
591
- if ( _postArgs[j].key == name )
592
- return _postArgs[j].value ;
593
- }
594
- for (int i = 0 ; i < _currentArgCount + _currentArgsHavePlain; ++i) {
595
- if ( _currentArgs[i].key == name )
596
- return _currentArgs[i].value ;
597
- }
598
- return emptyString;
555
+ for (size_t j = 0 ; j < _postArgsLen; ++j) {
556
+ if ( _postArgs[j].key == name )
557
+ return _postArgs[j].value ;
558
+ }
559
+ for (size_t i = 0 ; i < _currentArgCount + _currentArgsHavePlain; ++i) {
560
+ if ( _currentArgs[i].key == name )
561
+ return _currentArgs[i].value ;
562
+ }
563
+ return emptyString;
599
564
}
600
565
601
566
template <typename ServerType>
602
- const String& ESP8266WebServerTemplate<ServerType>::arg(int i) const {
603
- if (i >= 0 && i < _currentArgCount + _currentArgsHavePlain)
604
- return _currentArgs[i].value ;
605
- return emptyString;
567
+ const String& ESP8266WebServerTemplate<ServerType>::arg(int _i) const {
568
+ size_t i = (size_t ) _i;
569
+ if (i < _currentArgCount + _currentArgsHavePlain)
570
+ return _currentArgs[i].value ;
571
+ return emptyString;
606
572
}
607
573
608
574
template <typename ServerType>
609
- const String& ESP8266WebServerTemplate<ServerType>::argName(int i) const {
610
- if (i >= 0 && i < _currentArgCount + _currentArgsHavePlain)
611
- return _currentArgs[i].key ;
612
- return emptyString;
575
+ const String& ESP8266WebServerTemplate<ServerType>::argName(int _i) const {
576
+ size_t i = (size_t ) _i;
577
+ if (i < _currentArgCount + _currentArgsHavePlain)
578
+ return _currentArgs[i].key ;
579
+ return emptyString;
613
580
}
614
581
615
582
template <typename ServerType>
616
583
int ESP8266WebServerTemplate<ServerType>::args() const {
617
- return _currentArgCount;
584
+ return ( int ) _currentArgCount;
618
585
}
619
586
620
587
template <typename ServerType>
621
588
bool ESP8266WebServerTemplate<ServerType>::hasArg(const String& name) const {
622
- for (int j = 0 ; j < _postArgsLen; ++j) {
623
- if (_postArgs[j].key == name)
624
- return true ;
625
- }
626
- for (int i = 0 ; i < _currentArgCount + _currentArgsHavePlain; ++i) {
627
- if (_currentArgs[i].key == name)
628
- return true ;
629
- }
630
- return false ;
589
+ for (size_t j = 0 ; j < _postArgsLen; ++j) {
590
+ if (_postArgs[j].key == name)
591
+ return true ;
592
+ }
593
+ for (size_t i = 0 ; i < _currentArgCount + _currentArgsHavePlain; ++i) {
594
+ if (_currentArgs[i].key == name)
595
+ return true ;
596
+ }
597
+ return false ;
631
598
}
632
599
633
600
634
601
template <typename ServerType>
635
602
const String& ESP8266WebServerTemplate<ServerType>::header(const String& name) const {
636
- for (int i = 0 ; i < _headerKeysCount; ++i) {
637
- if (_currentHeaders[i].key .equalsIgnoreCase (name))
638
- return _currentHeaders[i].value ;
639
- }
640
- return emptyString;
603
+ for (size_t i = 0 ; i < _headerKeysCount; ++i) {
604
+ if (_currentHeaders[i].key .equalsIgnoreCase (name))
605
+ return _currentHeaders[i].value ;
606
+ }
607
+ return emptyString;
641
608
}
642
609
643
610
template <typename ServerType>
644
611
void ESP8266WebServerTemplate<ServerType>::collectHeaders(const char * headerKeys[], const size_t headerKeysCount) {
645
- _headerKeysCount = headerKeysCount + 1 ;
646
- if (_currentHeaders)
647
- delete[] _currentHeaders;
648
- _currentHeaders = new RequestArgument[_headerKeysCount];
649
- _currentHeaders[0 ].key = FPSTR (AUTHORIZATION_HEADER);
650
- for (int i = 1 ; i < _headerKeysCount; i++){
651
- _currentHeaders[i].key = headerKeys[i-1 ];
652
- }
612
+ _headerKeysCount = headerKeysCount + 1 ;
613
+ if (_currentHeaders)
614
+ delete [] _currentHeaders;
615
+ _currentHeaders = new RequestArgument[_headerKeysCount];
616
+ _currentHeaders[0 ].key = FPSTR (AUTHORIZATION_HEADER);
617
+ for (size_t i = 1 ; i < _headerKeysCount; i++) {
618
+ _currentHeaders[i].key = headerKeys[i-1 ];
619
+ }
653
620
}
654
621
655
622
template <typename ServerType>
656
- const String& ESP8266WebServerTemplate<ServerType>::header(int i) const {
657
- if (i < _headerKeysCount)
658
- return _currentHeaders[i].value ;
659
- return emptyString;
623
+ const String& ESP8266WebServerTemplate<ServerType>::header(int _i) const {
624
+ size_t i = (size_t ) _i;
625
+ if (i < _headerKeysCount)
626
+ return _currentHeaders[i].value ;
627
+ return emptyString;
660
628
}
661
629
662
630
template <typename ServerType>
663
- const String& ESP8266WebServerTemplate<ServerType>::headerName(int i) const {
664
- if (i < _headerKeysCount)
665
- return _currentHeaders[i].key ;
666
- return emptyString;
631
+ const String& ESP8266WebServerTemplate<ServerType>::headerName(int _i) const {
632
+ size_t i = (size_t ) _i;
633
+ if (i < _headerKeysCount)
634
+ return _currentHeaders[i].key ;
635
+ return emptyString;
667
636
}
668
637
669
638
template <typename ServerType>
670
639
int ESP8266WebServerTemplate<ServerType>::headers() const {
671
- return _headerKeysCount;
640
+ return ( int ) _headerKeysCount;
672
641
}
673
642
674
643
template <typename ServerType>
675
644
bool ESP8266WebServerTemplate<ServerType>::hasHeader(const String& name) const {
676
- for (int i = 0 ; i < _headerKeysCount; ++i) {
677
- if ((_currentHeaders[i].key .equalsIgnoreCase (name)) && (_currentHeaders[i].value .length () > 0 ))
678
- return true ;
679
- }
680
- return false ;
645
+ for (size_t i = 0 ; i < _headerKeysCount; ++i) {
646
+ if ((_currentHeaders[i].key .equalsIgnoreCase (name)) && (_currentHeaders[i].value .length () > 0 ))
647
+ return true ;
648
+ }
649
+ return false ;
681
650
}
682
651
683
652
template <typename ServerType>
0 commit comments