diff mbox series

ALSA: gus: Fix some error handling paths related to get_bpos() usage

Message ID d9ca841edad697154afa97c73a5d7a14919330d9.1727984008.git.christophe.jaillet@wanadoo.fr (mailing list archive)
State Accepted
Commit 9df39a872c462ea07a3767ebd0093c42b2ff78a2
Headers show
Series ALSA: gus: Fix some error handling paths related to get_bpos() usage | expand

Commit Message

Christophe JAILLET Oct. 3, 2024, 7:34 p.m. UTC
If get_bpos() fails, it is likely that the corresponding error code should
be returned.

Fixes: a6970bb1dd99 ("ALSA: gus: Convert to the new PCM ops")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
This patch is speculative. Review with care.
---
 sound/isa/gus/gus_pcm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Takashi Iwai Oct. 4, 2024, 7:02 a.m. UTC | #1
On Thu, 03 Oct 2024 21:34:01 +0200,
Christophe JAILLET wrote:
> 
> If get_bpos() fails, it is likely that the corresponding error code should
> be returned.
> 
> Fixes: a6970bb1dd99 ("ALSA: gus: Convert to the new PCM ops")
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
> This patch is speculative. Review with care.

It looks correct.  Applied now.  Thanks!


Takashi
diff mbox series

Patch

diff --git a/sound/isa/gus/gus_pcm.c b/sound/isa/gus/gus_pcm.c
index bcbcaa924c12..16f9bbb43a54 100644
--- a/sound/isa/gus/gus_pcm.c
+++ b/sound/isa/gus/gus_pcm.c
@@ -364,7 +364,7 @@  static int snd_gf1_pcm_playback_copy(struct snd_pcm_substream *substream,
 
 	bpos = get_bpos(pcmp, voice, pos, len);
 	if (bpos < 0)
-		return pos;
+		return bpos;
 	if (copy_from_iter(runtime->dma_area + bpos, len, src) != len)
 		return -EFAULT;
 	return playback_copy_ack(substream, bpos, len);
@@ -381,7 +381,7 @@  static int snd_gf1_pcm_playback_silence(struct snd_pcm_substream *substream,
 	
 	bpos = get_bpos(pcmp, voice, pos, len);
 	if (bpos < 0)
-		return pos;
+		return bpos;
 	snd_pcm_format_set_silence(runtime->format, runtime->dma_area + bpos,
 				   bytes_to_samples(runtime, count));
 	return playback_copy_ack(substream, bpos, len);