diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pure/httpclient.nim | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/pure/httpclient.nim b/lib/pure/httpclient.nim index bcd10803e..0ca3ca97b 100644 --- a/lib/pure/httpclient.nim +++ b/lib/pure/httpclient.nim @@ -832,14 +832,16 @@ proc parseResponse(client: HttpClient | AsyncHttpClient, if not fullyRead: httpError("Connection was closed before full request has been made") + when client is HttpClient: + result.bodyStream = newStringStream() + else: + result.bodyStream = newFutureStream[string]("parseResponse") + if getBody and result.code != Http204: + client.bodyStream = result.bodyStream when client is HttpClient: - client.bodyStream = newStringStream() - result.bodyStream = client.bodyStream parseBody(client, result.headers, result.version) else: - client.bodyStream = newFutureStream[string]("parseResponse") - result.bodyStream = client.bodyStream assert(client.parseBodyFut.isNil or client.parseBodyFut.finished) # do not wait here for the body request to complete client.parseBodyFut = parseBody(client, result.headers, result.version) |