Commit Graph

2285 Commits

Author SHA1 Message Date
Steel Titanium def090c9f0 Move the ifdef 2018-10-07 14:45:03 -04:00
Monster Iestyn a5fb2143fd Merge branch 'fixer-mixer' into 'master'
Fixer mixer: Mixer Memory Leaks

See merge request STJr/SRB2!287
2018-10-07 13:10:26 -04:00
toaster b1e02467bf Weather is already run client-side. What if we ran it render-side, for major performance gains? This commit will answer all your questions - and more! 2018-10-07 15:00:58 +01:00
Sryder fb6c329870 Fix the crashing bug hopefully
A value of 1 in freesrc for Mix_LoadWAV_RW and Mix_LoadMus_RW calls SDL_RWclose on the RWops anyway.
For Mix_LoadWAV_RW the RWops is freed right after the data is loaded (because it makes a copy of the data in memory)
For Mix_LoadMUS_RW the RWops is freed when Mix_FreeMusic is called (because the data is not a copy)
So setting 1 on freesrc doesn't actually free the RWops immediately on Mix_LoadMus_RW *unless* it failed to load any music.
2018-10-07 10:37:45 +01:00
Sryder 02597e0bf9 Fix compiler warnings. 2018-10-07 09:26:18 +01:00
Sryder d072dd2725 I think that should be NULL, not 0 actually. 2018-10-07 00:22:23 +01:00
Sryder 7b417b573c Mix_QuickLoad_RAW sets a flag in the Mix_Chunk so that Mix_FreeChunk doesn't actually Free the sound.
Checks for the flag when freeing, and if it's 0, we free the data manually after Mix_FreeChunk.
I went back to Z_Malloc and Z_Free for this because they still work after this.
2018-10-07 00:15:42 +01:00
Sryder 725a65c1f7 Call SDL_RWclose after an SDL_RWFromMem call to close the RWops. 2018-10-07 00:15:11 +01:00
Monster Iestyn 1ec601af6b Draw a star for continues if invalid skin numbers are somehow supplied 2018-10-05 22:42:36 +01:00
Steel Titanium b812a6a4ab Really fix DD compiling this time. 2018-10-04 22:56:11 -04:00
Steel Titanium fc5d969642 Fix DD compiling 2018-10-04 22:44:26 -04:00
Steel Titanium 49cb1ffe9f Restore deleted endif 2018-10-04 22:38:59 -04:00
Steel Titanium 79f5f4885c Split zlib and libpng 2018-10-04 19:47:19 -04:00
Monster Iestyn a605ee9c11 Merge branch 'linux-better-mem-report' into 'master'
Use MemAvailable instead

See merge request STJr/SRB2!281
2018-10-01 16:25:21 -04:00
Steel Titanium f88708bb75 Fix the weird indentation 2018-09-21 12:05:52 -04:00
Steel Titanium 68ec811909 Rearrange the code.
Thanks again MonsterIestyn!
2018-09-21 11:26:08 -04:00
Steel af58ba9ae3 Remove this that somehow slipped in. 2018-09-21 07:21:49 -04:00
Steel be74b4e58b Fix up errors with buildbots 2018-09-21 07:16:54 -04:00
Steel Titanium 378495cb2b Add some stuff 2018-09-20 18:33:50 -04:00
Steel Titanium a53f036149 Use MemAvailable instead 2018-09-20 18:30:46 -04:00
mazmazz 34e403afcb S_ChangeMusic: More specific load/play fail messages 2018-09-18 09:38:41 -04:00
Monster Iestyn 1b7b1f3f79 Fix order of operations messups by adding brackets 2018-09-16 20:25:07 +01:00
mazmazz 40a8c9c1ee Mixer: HAVE_LIBGME ifdef in I_LoadSong 2018-09-15 00:35:24 -04:00
mazmazz 9a5eb02459 Fix Windows buildbot for MP3_MAD/MODPLUG define (the header we use is 2.0.2) 2018-09-14 17:47:04 -04:00
mazmazz 17ec5d8022 Mixer: Better MODPLUG/MP3_MAD defines
(cherry picked from commit 5b724e18b5268b0492b3f8b8980aadd2dd41e235)
2018-09-14 17:27:31 -04:00
mazmazz fdbe3e80f6 Fix compile errors on buildbots
* Check SDL Mixer 2.0.3 for MUS_MODPLUG_UNUSED, MUS_MP3_MAD_UNUSED
* Mixed D+C in I_LoadSong
2018-09-14 17:07:13 -04:00
mazmazz b330dc2394 Don't call I_StartupSound in SFX toggle
* Mixer: make I_StartupSound return early if already set up
* Restartaudio: Add StopSFX call
2018-09-14 16:39:10 -04:00
mazmazz 76be77b93a Rip out SDL Mixer code from sdl_sound.c because superfluous
* Mixer code has been in mixer_sound.c; this file is not invoked unless compiling with NOMIXER=1
* Remove everything under #ifdef HAVE_MIXER because this is never triggered
* Comment out #ifdef HAVE_LIBGME because we don't support playing music anyway (but theoretically, it could have worked separately from Mixer)
* Stub new music calls
2018-09-14 14:52:24 -04:00
mazmazz cb4e075137 I_InitMusic SDL2: Don't unload GME indiscriminately 2018-09-14 13:36:01 -04:00
mazmazz 0999b0f8a8 srb2dd music cleanup fixes 2018-09-14 13:24:15 -04:00
mazmazz e72610a3dc Separate StopMusic and UnloadMusic 2018-09-14 12:47:33 -04:00
mazmazz 8e05de17f0 Bring back music_data handle, for srb2dd 2018-09-14 12:29:58 -04:00
mazmazz 691de18fbb Menu sound toggle fixes (and add starpost sfx to menu) 2018-09-14 11:24:28 -04:00
mazmazz 4b1bc53db1 Compile fixes 2018-09-14 10:58:41 -04:00
mazmazz fac7d19637 Case-insensitive music_name comparison
(cherry picked from commit a7ae059949b320723727aea4468a370bc63c3910)
2018-09-14 10:49:44 -04:00
mazmazz 8541963c61 I_SongPlaying detect GME properly
(cherry picked from commit e88d1477616ca66472ecb50d371e37dc79c77c0f)
2018-09-14 10:49:44 -04:00
mazmazz d94f7e3cb0 Stub I_UnloadSong because we already unload in I_StopMusic
* Stop-gap for now. Ideally the logic would be in the respective places.

# Conflicts:
#	src/sdl/mixer_sound.c

(cherry picked from commit eae5d3333f5001512c82f22f2b1433a955b3a6c3)
2018-09-14 10:49:44 -04:00
mazmazz 5f22b7d973 Volume fixes
# Conflicts:
#	src/sdl/mixer_sound.c

(cherry picked from commit d39b7011c5b12e5b7abe3e493971e003469a1f3d)
2018-09-14 10:49:44 -04:00
mazmazz 2fbe206ecb A word
(cherry picked from commit fb6f8c8a0752c229f5b7369729437c8fecb54d45)
2018-09-14 10:49:44 -04:00
mazmazz b0c47e2fb1 GME fix: play song in I_PlaySong, not I_LoadSong
(cherry picked from commit 5f21bf230d9716b7cc5b52e4bf3591ebe01e9f3a)
2018-09-14 10:45:39 -04:00
mazmazz 4d61f00b86 Refactor I_MusicType MusicPlaying and MusicPaused other targets
(cherry picked from commit 9e6eebeb8d6b4119d87e9678bb6b0687e3dc5217)
2018-09-14 10:45:39 -04:00
mazmazz eacf0ba00b Refactor I_MusicType MusicPlaying and MusicPaused -> I_SongType ...
(cherry picked from commit 4b82de9e540d6dc0651bbe8db8e5e15cba39f650)
2018-09-14 10:45:38 -04:00
mazmazz d535c14fc6 Refactoring and reordering other targets
(cherry picked from commit cf065e106f68fb8af3b0568eba188c8235b1656e)
2018-09-14 10:43:46 -04:00
mazmazz 5bac836d4c Minor refactoring and reordering
* I_GetMusicType() -> I_MusicType()
* Wrap MIDI volume hack in #ifdef _WIN32

(cherry picked from commit a7d51bf81030c228937a8e759f8f43b85817fce6)
2018-09-14 10:42:27 -04:00
mazmazz 8c78d86c36 Play the opposite type music (Digital/MIDI) when toggling between them in menu
* S_MusicInfo method to retrieve name, flags, and looping

(cherry picked from commit f6ec93198f0dcfa1d053cca88172c3e3c7ba310c)
2018-09-14 10:38:32 -04:00
mazmazz 7e7899ae83 Toggle Digi/MIDI music in menu accurately; add S_MusicType
(cherry picked from commit 4aa100aa575cc7fc14a743085222c806ba2c714a)
2018-09-14 10:37:08 -04:00
mazmazz 17cf310b84 nodigimusic nomusic nosound refactor other targets
(cherry picked from commit 86f151db654beb14e8d6893cdff2adaa965e8e4b)
2018-09-14 10:35:56 -04:00
mazmazz a414ccf24a nodigimusic nomusic nosound -> digital_disabled midi_disabled sound_disabled
(cherry picked from commit 07738fb0bcf640a4349337373f451fe68e024b2a)
2018-09-14 10:35:51 -04:00
mazmazz 44557d9c9d I_MusicPlaying, I_MusicPaused other targets
(cherry picked from commit d5ec38815968e267aceb59a48a6cb6d3292c0b69)
2018-09-14 10:28:35 -04:00
mazmazz 011a043dba Refactoring, music statues
* S_Init -> S_InitSfxChannels because it did mostly SFX anyway
* S_MusicPlaying, S_MusicPaused, S_MusicName, S_MusicExists new status methods
* I_MusicPlaying, I_MusicPaused

(cherry picked from commit f5f0b5e76c2fd405c8cc895dde653c5ed2652622)
2018-09-14 10:28:29 -04:00