diff --git a/src/s_sound.c b/src/s_sound.c
index 3da594fe181df1bd4a1ba971e1e8856943c3367c..4a9500e7197fa88443e3ad076924e2643cbe3654 100644
--- a/src/s_sound.c
+++ b/src/s_sound.c
@@ -1437,6 +1437,8 @@ static void S_ChangeMusicToQueue(void)
 
 void S_ChangeMusicEx(const char *mmusic, UINT16 mflags, boolean looping, UINT32 position, UINT32 prefadems, UINT32 fadeinms)
 {
+	char newmusic[7];
+
 #if defined (DC) || defined (_WIN32_WCE) || defined (PSP) || defined(GP2X)
 	S_ClearSfx();
 #endif
@@ -1444,7 +1446,6 @@ void S_ChangeMusicEx(const char *mmusic, UINT16 mflags, boolean looping, UINT32
 	if (S_MusicDisabled())
 		return;
 
-	char newmusic[7];
 	strncpy(newmusic, mmusic, 7);
 #if defined(HAVE_BLUA) && defined(HAVE_LUA_MUSICPLUS)
 	if(LUAh_MusicChange(music_name, newmusic, &mflags, &looping, &position, &prefadems, &fadeinms))