瀏覽代碼

Fix bug in LoadMusicStream

free() and NULL at the end.
Michael Vetter 7 年之前
父節點
當前提交
186c1b157e
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      src/audio.c

+ 3 - 3
src/audio.c

@@ -1437,9 +1437,6 @@ Music LoadMusicStream(const char *fileName)
     
     
     if (!musicLoaded)
     if (!musicLoaded)
     {
     {
-        free(music);
-        music = NULL;
-
         if (music->ctxType == MUSIC_AUDIO_OGG) stb_vorbis_close(music->ctxOgg);
         if (music->ctxType == MUSIC_AUDIO_OGG) stb_vorbis_close(music->ctxOgg);
     #if defined(SUPPORT_FILEFORMAT_FLAC)
     #if defined(SUPPORT_FILEFORMAT_FLAC)
         else if (music->ctxType == MUSIC_AUDIO_FLAC) drflac_free(music->ctxFlac);
         else if (music->ctxType == MUSIC_AUDIO_FLAC) drflac_free(music->ctxFlac);
@@ -1454,6 +1451,9 @@ Music LoadMusicStream(const char *fileName)
         else if (music->ctxType == MUSIC_MODULE_MOD) jar_mod_unload(&music->ctxMod);
         else if (music->ctxType == MUSIC_MODULE_MOD) jar_mod_unload(&music->ctxMod);
     #endif
     #endif
 
 
+        free(music);
+        music = NULL;
+
         TraceLog(LOG_WARNING, "[%s] Music file could not be opened", fileName);
         TraceLog(LOG_WARNING, "[%s] Music file could not be opened", fileName);
     }
     }