From 2809cc9b86ac731bd58cf308e512a3392671ad77 Mon Sep 17 00:00:00 2001 From: MihailRis Date: Fri, 17 May 2024 17:50:10 +0300 Subject: [PATCH] help to non-existing command + audio fix --- src/audio/audio.cpp | 11 ++++++----- src/logic/scripting/lua/libconsole.cpp | 3 +++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/audio/audio.cpp b/src/audio/audio.cpp index 5160bc09..3829c16a 100644 --- a/src/audio/audio.cpp +++ b/src/audio/audio.cpp @@ -255,16 +255,17 @@ speakerid_t audio::play( sound = sound->variants.at(index).get(); } } - auto speaker = sound->newInstance(priority, channel); - if (speaker == nullptr) { + auto speaker_ptr = sound->newInstance(priority, channel); + if (speaker_ptr == nullptr) { remove_lower_priority_speaker(priority); - speaker = sound->newInstance(priority, channel); + speaker_ptr = sound->newInstance(priority, channel); } - if (speaker == nullptr) { + if (speaker_ptr == nullptr) { return 0; } + auto speaker = speaker_ptr.get(); speakerid_t id = nextId++; - speakers.emplace(id, std::move(speaker)); + speakers.emplace(id, std::move(speaker_ptr)); speaker->setPosition(position); speaker->setVolume(volume); speaker->setPitch(pitch); diff --git a/src/logic/scripting/lua/libconsole.cpp b/src/logic/scripting/lua/libconsole.cpp index bab7c43e..52b1010d 100644 --- a/src/logic/scripting/lua/libconsole.cpp +++ b/src/logic/scripting/lua/libconsole.cpp @@ -66,6 +66,9 @@ static int l_get_command_info(lua_State* L) { auto interpreter = engine->getCommandsInterpreter(); auto repo = interpreter->getRepository(); auto command = repo->get(name); + if (command == nullptr) { + return 0; + } const auto& args = command->getArgs(); const auto& kwargs = command->getKwArgs();