diff --git a/src/sdl/mixer_sound.c b/src/sdl/mixer_sound.c
index 41248245fb5c22b56dff0e553e3316ccbab6fb76..448c2faa6914d1039cf7d0dc44e4fc84fde42e69 100644
--- a/src/sdl/mixer_sound.c
+++ b/src/sdl/mixer_sound.c
@@ -774,23 +774,25 @@ boolean I_SetSongPosition(UINT32 position)
 #ifdef HAVE_LIBGME
 	if (gme)
 	{
+		// this is unstable, so fail silently
+		return true;
 		// this isn't required technically, but GME thread-locks for a second
 		// if you seek too high from the counter
-		length = I_GetSongLength();
-		if (length)
-			position = get_adjusted_position(position);
-
-		SDL_LockAudio();
-		gme_err_t gme_e = gme_seek(gme, position);
-		SDL_UnlockAudio();
-
-		if (gme_e != NULL)
-		{
-			CONS_Alert(CONS_ERROR, "GME error: %s\n", gme_e);
-			return false;
-		}
-		else
-			return true;
+		// length = I_GetSongLength();
+		// if (length)
+		// 	position = get_adjusted_position(position);
+
+		// SDL_LockAudio();
+		// gme_err_t gme_e = gme_seek(gme, position);
+		// SDL_UnlockAudio();
+
+		// if (gme_e != NULL)
+		// {
+		// 	CONS_Alert(CONS_ERROR, "GME error: %s\n", gme_e);
+		// 	return false;
+		// }
+		// else
+		// 	return true;
 	}
 	else
 #endif