Fix Httpclient headers from being modified accidentally (#17808)
This commit is contained in:
parent
a9b62de895
commit
f1ce173283
1 changed files with 5 additions and 2 deletions
|
|
@ -962,12 +962,15 @@ proc format(client: HttpClient | AsyncHttpClient,
|
||||||
|
|
||||||
proc override(fallback, override: HttpHeaders): HttpHeaders =
|
proc override(fallback, override: HttpHeaders): HttpHeaders =
|
||||||
# Right-biased map union for `HttpHeaders`
|
# Right-biased map union for `HttpHeaders`
|
||||||
if override.isNil:
|
|
||||||
return fallback
|
|
||||||
|
|
||||||
result = newHttpHeaders()
|
result = newHttpHeaders()
|
||||||
# Copy by value
|
# Copy by value
|
||||||
result.table[] = fallback.table[]
|
result.table[] = fallback.table[]
|
||||||
|
|
||||||
|
if override.isNil:
|
||||||
|
# Return the copy of fallback so it does not get modified
|
||||||
|
return result
|
||||||
|
|
||||||
for k, vs in override.table:
|
for k, vs in override.table:
|
||||||
result[k] = vs
|
result[k] = vs
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue