From 5618a34d61eff9c1fa0cd6deba75f4952d505259 Mon Sep 17 00:00:00 2001 From: Joey Date: Tue, 20 Apr 2021 23:42:04 -0600 Subject: [PATCH] Fix Httpclient headers from being modified accidentally (#17808) (cherry picked from commit f1ce173283a06197cfde80e9117ba1aa0ed0dd02) --- lib/pure/httpclient.nim | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/pure/httpclient.nim b/lib/pure/httpclient.nim index 0083d816c0..bfc3782795 100644 --- a/lib/pure/httpclient.nim +++ b/lib/pure/httpclient.nim @@ -958,12 +958,15 @@ proc format(client: HttpClient | AsyncHttpClient, proc override(fallback, override: HttpHeaders): HttpHeaders = # Right-biased map union for `HttpHeaders` - if override.isNil: - return fallback result = newHttpHeaders() # Copy by value 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: result[k] = vs