diff --git a/lib/pure/httpclient.nim b/lib/pure/httpclient.nim index 129ce4e77d..0083d816c0 100644 --- a/lib/pure/httpclient.nim +++ b/lib/pure/httpclient.nim @@ -1155,15 +1155,15 @@ proc downloadFile*(client: HttpClient, url: string, filename: string) = client.getBody = true let resp = client.get(url) + if resp.code.is4xx or resp.code.is5xx: + raise newException(HttpRequestError, resp.status) + client.bodyStream = newFileStream(filename, fmWrite) if client.bodyStream.isNil: fileError("Unable to open file") parseBody(client, resp.headers, resp.version) client.bodyStream.close() - if resp.code.is4xx or resp.code.is5xx: - raise newException(HttpRequestError, resp.status) - proc downloadFile*(client: AsyncHttpClient, url: string, filename: string): Future[void] = proc downloadFileEx(client: AsyncHttpClient,