From 884f36e554f9c58815bc24cc3f1f033ab30cb7c7 Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Mon, 30 Apr 2018 21:18:01 +0200 Subject: [PATCH] server: Fix return value of com_ff(). We set the VSS_NEXT flag if the amount of seconds to jump forward would exceed the end of the current audio file. However, in this case we fail the command by returning -E_NO_AUDIO_FILE, which is incorrect. This bug was present since day one of the git repo (2006). --- command.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/command.c b/command.c index fe4b9232..6777ccc9 100644 --- a/command.c +++ b/command.c @@ -728,6 +728,7 @@ static int com_ff(struct command_context *cc) ret = -E_NO_AUDIO_FILE; if (!mmd->afd.afhi.chunks_total || !mmd->afd.afhi.seconds_total) goto out; + ret = 1; promille = (1000 * mmd->current_chunk) / mmd->afd.afhi.chunks_total; if (backwards) promille -= 1000 * i / mmd->afd.afhi.seconds_total; @@ -743,7 +744,6 @@ static int com_ff(struct command_context *cc) mmd->new_vss_status_flags |= VSS_REPOS; mmd->new_vss_status_flags &= ~VSS_NEXT; mmd->events++; - ret = 1; out: mutex_unlock(mmd_mutex); return ret; -- 2.39.5