From c1f95cebfda67f0700cb2730a9a72b49811dac66 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Mon, 21 Jul 2014 21:54:02 +0200 Subject: Fix player retry logic If retry is triggered once and openStream fails after that retry is never set to false, resulting in an infinite loop that cannot be interrupted by the user. --- src/player.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/player.c b/src/player.c index 5421310..0476a6b 100644 --- a/src/player.c +++ b/src/player.c @@ -416,8 +416,9 @@ void *BarPlayerThread (void *data) { player_t * const player = data; intptr_t pret = PLAYER_RET_OK; - bool retry = false; + bool retry; do { + retry = false; if (openStream (player)) { if (openFilter (player) && openDevice (player)) { retry = play (player) == AVERROR_INVALIDDATA; -- cgit v1.2.3