src/client/http_client.rs - download: fix error handling
This commit is contained in:
parent
45db6f89e1
commit
81820b0d4d
@ -224,16 +224,22 @@ impl HttpClient {
|
||||
client.request(req)
|
||||
.map_err(Error::from)
|
||||
.and_then(|resp| {
|
||||
|
||||
let _status = resp.status(); // fixme: ??
|
||||
|
||||
resp.into_body()
|
||||
.map_err(Error::from)
|
||||
.for_each(move |chunk| {
|
||||
output.write_all(&chunk)?;
|
||||
Ok(())
|
||||
})
|
||||
|
||||
let status = resp.status();
|
||||
if !status.is_success() {
|
||||
future::Either::A(
|
||||
HttpClient::api_response(resp)
|
||||
.and_then(|_| { bail!("unknown error"); })
|
||||
)
|
||||
} else {
|
||||
future::Either::B(
|
||||
resp.into_body()
|
||||
.map_err(Error::from)
|
||||
.for_each(move |chunk| {
|
||||
output.write_all(&chunk)?;
|
||||
Ok(())
|
||||
})
|
||||
)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user