summaryrefslogtreecommitdiff
path: root/src/settings.c
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2018-04-07 20:17:23 +0200
committerLars-Dominik Braun <lars@6xq.net>2018-04-07 20:18:47 +0200
commitff4f15214100d209f39e4ed85f47e572c8fe9289 (patch)
tree1cea789efe2396b1855f5f65fbb79244cb0cf8f1 /src/settings.c
parent3c4d8f65896253a82e19adcbe2808a863a99f74f (diff)
downloadpianobar-ff4f15214100d209f39e4ed85f47e572c8fe9289.tar.gz
pianobar-ff4f15214100d209f39e4ed85f47e572c8fe9289.tar.bz2
pianobar-ff4f15214100d209f39e4ed85f47e572c8fe9289.zip
Add network timeouts and retries
All network operations can time out now. API requests are retried up to three times (default). Replaces setting max_player_errors with max_retries, which is used for player and API. Adds timeout setting. Partially reverts 436a1d4012553a2f33d0e3a5180b3b5ae0378bdd and fixes (at least) issue #657. Thanks to @exarkun for testing.
Diffstat (limited to 'src/settings.c')
-rw-r--r--src/settings.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/settings.c b/src/settings.c
index 9f05adc..06ad818 100644
--- a/src/settings.c
+++ b/src/settings.c
@@ -161,8 +161,9 @@ void BarSettingsRead (BarSettings_t *settings) {
settings->autoselect = true;
settings->history = 5;
settings->volume = 0;
+ settings->timeout = 30; /* seconds */
settings->gainMul = 1.0;
- settings->maxPlayerErrors = 5;
+ settings->maxRetry = 3;
settings->sortOrder = BAR_SORT_NAME_AZ;
settings->loveIcon = strdup (" <3");
settings->banIcon = strdup (" </3");
@@ -337,8 +338,10 @@ void BarSettingsRead (BarSettings_t *settings) {
settings->eventCmd = BarSettingsExpandTilde (val, userhome);
} else if (streq ("history", key)) {
settings->history = atoi (val);
- } else if (streq ("max_player_errors", key)) {
- settings->maxPlayerErrors = atoi (val);
+ } else if (streq ("max_retry", key)) {
+ settings->maxRetry = atoi (val);
+ } else if (streq ("timeout", key)) {
+ settings->timeout = atoi (val);
} else if (streq ("sort", key)) {
size_t i;
static const char *mapping[] = {"name_az",