From 5cf4a2d79f65a38d3747cdfb8bf64614578eb6ea Mon Sep 17 00:00:00 2001 From: dwhathaway Date: Thu, 4 Jun 2015 16:46:28 -0700 Subject: [PATCH] Fix for lost HttpHeader items In cases where there are multiple header entries with the same name, only the first one in the collection was being copied from the OkHttp Header to the HttpResponseMessage.Headers collection --- src/ModernHttpClient/Android/OkHttpNetworkHandler.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ModernHttpClient/Android/OkHttpNetworkHandler.cs b/src/ModernHttpClient/Android/OkHttpNetworkHandler.cs index de6d3c3..6d4fee2 100644 --- a/src/ModernHttpClient/Android/OkHttpNetworkHandler.cs +++ b/src/ModernHttpClient/Android/OkHttpNetworkHandler.cs @@ -152,8 +152,10 @@ protected override async Task SendAsync(HttpRequestMessage var respHeaders = resp.Headers(); foreach (var k in respHeaders.Names()) { - ret.Headers.TryAddWithoutValidation(k, respHeaders.Get(k)); - ret.Content.Headers.TryAddWithoutValidation(k, respHeaders.Get(k)); + foreach (string item in respHeaders.Values(k)) { + ret.Headers.TryAddWithoutValidation(k, item); + ret.Content.Headers.TryAddWithoutValidation(k, item); + } } return ret;