8000 Slight efficiency tweak · troyhacks/ESPAsyncWebServer@585c00f · GitHub
[go: up one dir, main page]

Skip to content

Commit 585c00f

Browse files
committed
Slight efficiency tweak
1 parent daf5062 commit 585c00f

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

src/WebResponses.cpp

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,12 +130,6 @@ void AsyncWebServerResponse::addHeader(String name, String value){
130130
}
131131

132132
String AsyncWebServerResponse::_assembleHead(uint8_t version){
133-
if(version){
134-
addHeader(F("Accept-Ranges"), F("none"));
135-
if(_chunked)
136-
addHeader(F("Transfer-Encoding"), F("chunked"));
137-
}
138-
139133
// Precalculate the output header block length
140134
size_t est_header_size = 10 + 4 + 2; // HTTP://1.version code + newlines
141135
est_header_size += strlen_P((const char*) _responseCodeToString(_code));
@@ -145,6 +139,12 @@ String AsyncWebServerResponse::_assembleHead(uint8_t version){
145139
if (_contentType.length()) {
146140
est_header_size += 16 + _contentType.length();
147141
}
142+
if (version) {
143+
est_header_size += 14 + 5 + 4;
144+
if (_chunked) {
145+
est_header_size += 18 + 8 + 4;
146+
}
147+
}
148148
for(const auto& header: _headers) {
149149
est_header_size += header.name().length() + header.value().length() + 4;
150150
};
@@ -174,6 +174,13 @@ String AsyncWebServerResponse::_assembleHead(uint8_t version){
174174
}
175175
_headers.free();
176176

177+
if(version) {
178+
out.concat(F("Accept-Ranges: none\r\n"));
179+
if(_chunked) {
180+
out.concat(F("Transfer-Encoding: chunked\r\n"));
181+
}
182+
}
183+
177184
out.concat(F("\r\n"));
178185
_headLength = out.length();
179186
return out;

0 commit comments

Comments
 (0)
0