From ca22a9892efe0aa965dbc44d81ec0d0f54722827 Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <[EMAIL REDACTED]>
Date: Tue, 2 Jun 2026 17:38:39 -0400
Subject: [PATCH] audiodecoder: Minor cleanup (mash some creation steps into an
else-if chain).
---
src/SDL_mixer.c | 13 +++----------
1 file changed, 3 insertions(+), 10 deletions(-)
diff --git a/src/SDL_mixer.c b/src/SDL_mixer.c
index b1314aea..a89d6cdb 100644
--- a/src/SDL_mixer.c
+++ b/src/SDL_mixer.c
@@ -3097,23 +3097,16 @@ MIX_AudioDecoder * MIX_CreateAudioDecoder_IO(SDL_IOStream *io, bool closeio, SDL
if (!audiodecoder->audio) {
SDL_free(audiodecoder);
return NULL;
- }
-
- if (!audiodecoder->audio->decoder->init_track(audiodecoder->audio->decoder_userdata, io, &audiodecoder->audio->spec, audiodecoder->audio->props, &audiodecoder->track_userdata)) {
+ } else if (!audiodecoder->audio->decoder->init_track(audiodecoder->audio->decoder_userdata, io, &audiodecoder->audio->spec, audiodecoder->audio->props, &audiodecoder->track_userdata)) {
MIX_DestroyAudio(audiodecoder->audio);
SDL_free(audiodecoder);
return NULL;
- }
-
- if (!audiodecoder->audio->decoder->seek(audiodecoder->track_userdata, 0)) {
+ } else if (!audiodecoder->audio->decoder->seek(audiodecoder->track_userdata, 0)) {
audiodecoder->audio->decoder->quit_track(audiodecoder->track_userdata);
MIX_DestroyAudio(audiodecoder->audio);
SDL_free(audiodecoder);
return NULL;
- }
-
- audiodecoder->stream = SDL_CreateAudioStream(&audiodecoder->audio->spec, &audiodecoder->audio->spec);
- if (!audiodecoder->stream) {
+ } else if ((audiodecoder->stream = SDL_CreateAudioStream(&audiodecoder->audio->spec, &audiodecoder->audio->spec)) == NULL) {
audiodecoder->audio->decoder->quit_track(audiodecoder->track_userdata);
MIX_DestroyAudio(audiodecoder->audio);
SDL_free(audiodecoder);