diff --git a/src/m_menu.c b/src/m_menu.c
index a4dd665124f9bc804605d1e604822abcfd1e98b4..35836c8026a864f79739ecc245ec71bb39697ebf 100644
--- a/src/m_menu.c
+++ b/src/m_menu.c
@@ -7738,6 +7738,8 @@ static void M_DrawSoundTest(void)
 				frame[3] += (((cv_soundtest.value - 1) / 9) % (FIRSTSUPERCOLOR - frame[3]));
 				if (st_time < (2 << FRACBITS))
 					st_time += renderdeltatics;
+				if (st_time >= (2 << FRACBITS))
+					st_time = 2 << FRACBITS;
 			}
 		}
 		else