Return 504 when a file is missing to be by-spec

The spec defines that the media endpoints should return 504 when a file
is not-yet-uploaded, which has been interpreted to include when a file
was deleted. Modifies the /media/v3/download/ and /media/r0/thumbnail
endpoints.
This commit is contained in:
tranquillity-codes 2024-06-28 10:01:41 +02:00 committed by Charles Hall
parent bf799c1fa1
commit c70cfd3d25
No known key found for this signature in database
GPG key ID: 7B8E0645816E07CF
3 changed files with 14 additions and 11 deletions

View file

@ -98,9 +98,9 @@ impl Error {
pub(crate) fn to_response(&self) -> Ra<UiaaResponse> {
use ErrorKind::{
Forbidden, GuestAccessForbidden, LimitExceeded, MissingToken,
NotFound, ThreepidAuthFailed, ThreepidDenied, TooLarge,
Unauthorized, Unknown, UnknownToken, Unrecognized, UserDeactivated,
WrongRoomKeysVersion,
NotFound, NotYetUploaded, ThreepidAuthFailed, ThreepidDenied,
TooLarge, Unauthorized, Unknown, UnknownToken, Unrecognized,
UserDeactivated, WrongRoomKeysVersion,
};
if let Self::Uiaa(uiaainfo) = self {
@ -142,6 +142,7 @@ impl Error {
..
} => StatusCode::TOO_MANY_REQUESTS,
TooLarge => StatusCode::PAYLOAD_TOO_LARGE,
NotYetUploaded => StatusCode::GATEWAY_TIMEOUT,
_ => StatusCode::BAD_REQUEST,
},
),