From 9d18b4b5ed18609488a48c8b42acb18cc866d9b5 Mon Sep 17 00:00:00 2001 From: Sylvain Date: Tue, 18 Apr 2023 21:32:15 +0200 Subject: [PATCH] Android: fix crash when AAUDIO isn't used (bug #7620) --- src/audio/aaudio/SDL_aaudio.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/audio/aaudio/SDL_aaudio.c b/src/audio/aaudio/SDL_aaudio.c index 9388111af..ee3d8752c 100644 --- a/src/audio/aaudio/SDL_aaudio.c +++ b/src/audio/aaudio/SDL_aaudio.c @@ -321,6 +321,12 @@ AudioBootStrap aaudio_bootstrap = { void aaudio_PauseDevices(void) { int i; + + /* AAUDIO driver is not used */ + if (ctx.handle == NULL) { + return; + } + for (i = 0; i < get_max_num_audio_dev(); i++) { SDL_AudioDevice *this = get_audio_dev(i); SDL_AudioDevice *audioDevice = NULL; @@ -386,6 +392,12 @@ void aaudio_PauseDevices(void) void aaudio_ResumeDevices(void) { int i; + + /* AAUDIO driver is not used */ + if (ctx.handle == NULL) { + return; + } + for (i = 0; i < get_max_num_audio_dev(); i++) { SDL_AudioDevice *this = get_audio_dev(i); SDL_AudioDevice *audioDevice = NULL; @@ -447,6 +459,12 @@ void aaudio_ResumeDevices(void) SDL_bool aaudio_DetectBrokenPlayState(void) { int i; + + /* AAUDIO driver is not used */ + if (ctx.handle == NULL) { + return SDL_FALSE; + } + for (i = 0; i < get_max_num_audio_dev(); i++) { SDL_AudioDevice *this = get_audio_dev(i); SDL_AudioDevice *audioDevice = NULL;