Avoided a memory allocation error of SDL EnginePlayer on Android version when loading more than 32 audio samples at same time.

This commit is contained in:
Vittorio Alfieri
2020-12-27 01:08:51 +01:00
parent b7c6725b44
commit 1f98173197

View File

@@ -184,7 +184,13 @@ JMusic *JSoundSystem::LoadMusic(const char *fileName)
const SLboolean req[2] = {SL_BOOLEAN_TRUE, SL_BOOLEAN_TRUE};
result = (*engineEngine)->CreateAudioPlayer(engineEngine, &music->playerObject, &audioSrc, &audioSnk, 2, ids, req);
DebugTrace("result " << result);
if(result == SL_RESULT_MEMORY_FAILURE){
delete music;
mCurrentMusic = NULL;
return NULL;
}
// realize the player
result = (*music->playerObject)->Realize(music->playerObject, SL_BOOLEAN_FALSE);
DebugTrace("result " << result);
@@ -303,6 +309,12 @@ JSample *JSoundSystem::LoadSample(const char *fileName)
1, ids, req);
DebugTrace("result " << result);
if(result == SL_RESULT_MEMORY_FAILURE){
delete sample;
mCurrentSample = NULL;
return NULL;
}
// realize the player
result = (*sample->playerObject)->Realize(sample->playerObject, SL_BOOLEAN_FALSE);
DebugTrace("result " << result);