fix indentations in macro
Signed-off-by: eternal-flame-AD <yume@yumechi.jp>
This commit is contained in:
parent
e087326755
commit
f0f7542332
1 changed files with 27 additions and 26 deletions
|
@ -90,33 +90,34 @@ impl MatrixClient {
|
||||||
match $msg {
|
match $msg {
|
||||||
$(
|
$(
|
||||||
MessageType::$variant(file) => {
|
MessageType::$variant(file) => {
|
||||||
Ok(Some(Box::pin(
|
Ok(Some(Box::pin(
|
||||||
async move {
|
async move {
|
||||||
let src = match &file.source {
|
let src = match &file.source {
|
||||||
MediaSource::Plain(s) => s,
|
MediaSource::Plain(s) => s,
|
||||||
MediaSource::Encrypted(e) => &e.url,
|
MediaSource::Encrypted(e) => &e.url,
|
||||||
};
|
};
|
||||||
let filename = file.filename.as_deref().map(|s| s.to_string()).unwrap_or(file.body.clone());
|
let filename = file.filename.as_deref().map(|s| s.to_string()).unwrap_or(file.body.clone());
|
||||||
let url = mxc_url_to_https(src.as_str(), self.client.homeserver().as_str());
|
let url = mxc_url_to_https(src.as_str(), self.client.homeserver().as_str());
|
||||||
let resp = client.get(&url).send().await?;
|
let resp = client.get(&url).send().await?;
|
||||||
let body = resp.bytes_stream();
|
let body = resp.bytes_stream();
|
||||||
Ok(FileStream {
|
Ok(FileStream {
|
||||||
filename,
|
filename,
|
||||||
url,
|
url,
|
||||||
stream: match &file.source {
|
stream: match &file.source {
|
||||||
MediaSource::Plain(_) => {
|
MediaSource::Plain(_) => {
|
||||||
Box::pin(body.map_err(DumpError::from)) as Pin<Box<dyn TryStream<Ok = Bytes, Error = DumpError, Item = Result<Bytes, DumpError>> + Send>>
|
Box::pin(body.map_err(DumpError::from))
|
||||||
|
}
|
||||||
|
MediaSource::Encrypted(e) => Box::pin(decrypt_file(e.as_ref(), body).await?.map_ok(|v| Bytes::from(v)).map_err(
|
||||||
|
|e| match e {
|
||||||
|
ErrOrWrongHash::Err(e) => e.into(),
|
||||||
|
ErrOrWrongHash::WrongHash => DumpError::HashMismatch,
|
||||||
|
},
|
||||||
|
))
|
||||||
|
}})
|
||||||
}
|
}
|
||||||
MediaSource::Encrypted(e) => Box::pin(decrypt_file(e.as_ref(), body).await?.map_ok(|v| Bytes::from(v)).map_err(
|
)))
|
||||||
|e| match e {
|
}
|
||||||
ErrOrWrongHash::Err(e) => e.into(),
|
)*
|
||||||
ErrOrWrongHash::WrongHash => DumpError::HashMismatch,
|
|
||||||
},
|
|
||||||
)) as Pin<Box<dyn TryStream<Ok = Bytes, Error = DumpError, Item = Result<Bytes, DumpError>> + Send>>,
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})))}
|
|
||||||
)*
|
|
||||||
_ => Ok(None),
|
_ => Ok(None),
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Reference in a new issue