diff --git a/src/lua_baselib.c b/src/lua_baselib.c index 100c114ee..3cafa32ca 100644 --- a/src/lua_baselib.c +++ b/src/lua_baselib.c @@ -2333,7 +2333,7 @@ static int lib_sMusicInfo(lua_State *L) } if (!player || P_IsLocalPlayer(player)) { - char *mname; + char mname[7]; UINT16 mflags; boolean looping; if (S_MusicInfo(mname, &mflags, &looping)) diff --git a/src/win32/win_snd.c b/src/win32/win_snd.c index 209e3099f..d31439922 100644 --- a/src/win32/win_snd.c +++ b/src/win32/win_snd.c @@ -675,7 +675,6 @@ boolean I_LoadSong(char *data, size_t len) fmt.decodebuffersize = (44100 * 2) / 35; fmt.pcmreadcallback = GMEReadCallback; fmt.userdata = gme; - FMR(FMOD_System_CreateStream(fsys, NULL, FMOD_OPENUSER | (looping ? FMOD_LOOP_NORMAL : 0), &fmt, &music_stream)); return true; } #endif @@ -772,6 +771,7 @@ boolean I_PlaySong(boolean looping) { gme_start_track(gme, 0); current_track = 0; + FMR(FMOD_System_CreateStream(fsys, NULL, FMOD_OPENUSER | (looping ? FMOD_LOOP_NORMAL : 0), &fmt, &music_stream)); FMR(FMOD_System_PlaySound(fsys, FMOD_CHANNEL_FREE, music_stream, false, &music_channel)); FMR(FMOD_Channel_SetVolume(music_channel, music_volume / 31.0)); FMR(FMOD_Channel_SetPriority(music_channel, 0));