From: Samuel Thibault Date: Mon, 7 Jan 2013 21:03:51 +0000 (+0100) Subject: staging: speakup: avoid out-of-range access in synth_add() X-Git-Tag: v3.4.26~87 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=95afecc15423d5ceaeaf26b943cb8891f9e36e26;p=platform%2Fkernel%2Flinux-stable.git staging: speakup: avoid out-of-range access in synth_add() commit 6102c48bd421074a33e102f2ebda3724e8d275f9 upstream. Check that array index is in-bounds before accessing the synths[] array. Signed-off-by: Samuel Thibault Cc: Nickolai Zeldovich Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/speakup/synth.c b/drivers/staging/speakup/synth.c index 217fd4a..5710fc5 100644 --- a/drivers/staging/speakup/synth.c +++ b/drivers/staging/speakup/synth.c @@ -423,7 +423,7 @@ int synth_add(struct spk_synth *in_synth) int i; int status = 0; mutex_lock(&spk_mutex); - for (i = 0; synths[i] != NULL && i < MAXSYNTHS; i++) + for (i = 0; i < MAXSYNTHS && synths[i] != NULL; i++) /* synth_remove() is responsible for rotating the array down */ if (in_synth == synths[i]) { mutex_unlock(&spk_mutex);