Fix starting non-media repos (#17626)

Regressed in #17543.

The `max_download_size` config is not available on workers that don't
load the media repo.

Besides, we should honour the max_size param that was passed into the
function.
This commit is contained in:
Erik Johnston 2024-08-29 13:26:17 +01:00 committed by GitHub
parent a8f29c9913
commit b21134de3b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 4 additions and 5 deletions

1
changelog.d/17626.bugfix Normal file
View File

@ -0,0 +1 @@
Fix authenticated media responses using a wrong limit when following redirects over federation.

View File

@ -464,8 +464,6 @@ class MatrixFederationHttpClient:
self.max_long_retries = hs.config.federation.max_long_retries
self.max_short_retries = hs.config.federation.max_short_retries
self.max_download_size = hs.config.media.max_upload_size
self._cooperator = Cooperator(scheduler=_make_scheduler(self.reactor))
self._sleeper = AwakenableSleeper(self.reactor)
@ -1759,9 +1757,9 @@ class MatrixFederationHttpClient:
str_url,
)
# We don't know how large the response will be upfront, so limit it to
# the `max_upload_size` config value.
# the `max_size` config value.
length, headers, _, _ = await self._simple_http_client.get_file(
str_url, output_stream, self.max_download_size
str_url, output_stream, max_size
)
logger.info(