commit 3b27dbb0aa058bf01d648ad0c1b3399ce97f6d0e
parent ff2fbd322eca00af03ac5d1ee4854a147069cdc7
Author: BlackDex <black.dex@gmail.com>
Date: Tue, 12 Feb 2019 21:56:28 +0100
Added config option for icon download timeout
Diffstat:
3 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/.env.template b/.env.template
@@ -49,6 +49,11 @@
## otherwise it will delete them and they won't be downloaded again.
# DISABLE_ICON_DOWNLOAD=false
+## Icon download timeout
+## Configure the timeout value when downloading the favicons.
+## The default is 10 seconds, but this could be to low on slower network connections
+# ICON_DOWNLOAD_TIMEOUT=10
+
## Controls if new users can register
# SIGNUPS_ALLOWED=true
diff --git a/src/api/icons.rs b/src/api/icons.rs
@@ -26,7 +26,7 @@ lazy_static! {
// Reuse the client between requests
static ref CLIENT: Client = Client::builder()
.gzip(true)
- .timeout(Duration::from_secs(5))
+ .timeout(Duration::from_secs(CONFIG.icon_download_timeout()))
.default_headers(_header_map())
.build()
.unwrap();
diff --git a/src/config.rs b/src/config.rs
@@ -241,6 +241,8 @@ make_config! {
icon_cache_ttl: u64, true, def, 2_592_000;
/// Negative icon cache expiry |> Number of seconds before trying to download an icon that failed again.
icon_cache_negttl: u64, true, def, 259_200;
+ /// Icon download timeout |> Number of seconds when to stop attempting to download an icon.
+ icon_download_timeout: u64, true, def, 10;
/// Reload templates (Dev) |> When this is set to true, the templates get reloaded with every request. ONLY use this during development, as it can slow down the server
reload_templates: bool, true, def, false;