Commit graph

2336 commits

Author SHA1 Message Date
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 5b724e18b5)
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 a7ae059949)
2018-09-14 10:49:44 -04:00
mazmazz
8541963c61 I_SongPlaying detect GME properly
(cherry picked from commit e88d147761)
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 eae5d3333f)
2018-09-14 10:49:44 -04:00
mazmazz
5f22b7d973 Volume fixes
# Conflicts:
#	src/sdl/mixer_sound.c

(cherry picked from commit d39b7011c5)
2018-09-14 10:49:44 -04:00
mazmazz
2fbe206ecb A word
(cherry picked from commit fb6f8c8a07)
2018-09-14 10:49:44 -04:00
mazmazz
b0c47e2fb1 GME fix: play song in I_PlaySong, not I_LoadSong
(cherry picked from commit 5f21bf230d)
2018-09-14 10:45:39 -04:00
mazmazz
4d61f00b86 Refactor I_MusicType MusicPlaying and MusicPaused other targets
(cherry picked from commit 9e6eebeb8d)
2018-09-14 10:45:39 -04:00
mazmazz
eacf0ba00b Refactor I_MusicType MusicPlaying and MusicPaused -> I_SongType ...
(cherry picked from commit 4b82de9e54)
2018-09-14 10:45:38 -04:00
mazmazz
d535c14fc6 Refactoring and reordering other targets
(cherry picked from commit cf065e106f)
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 a7d51bf810)
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 f6ec93198f)
2018-09-14 10:38:32 -04:00
mazmazz
7e7899ae83 Toggle Digi/MIDI music in menu accurately; add S_MusicType
(cherry picked from commit 4aa100aa57)
2018-09-14 10:37:08 -04:00
mazmazz
17cf310b84 nodigimusic nomusic nosound refactor other targets
(cherry picked from commit 86f151db65)
2018-09-14 10:35:56 -04:00
mazmazz
a414ccf24a nodigimusic nomusic nosound -> digital_disabled midi_disabled sound_disabled
(cherry picked from commit 07738fb0bc)
2018-09-14 10:35:51 -04:00
mazmazz
44557d9c9d I_MusicPlaying, I_MusicPaused other targets
(cherry picked from commit d5ec388159)
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 f5f0b5e76c)
2018-09-14 10:28:29 -04:00
mazmazz
e58a8f4fe1 Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume other targets
(cherry picked from commit 9fb9386f84)
2018-09-14 10:23:47 -04:00