fix for crash in apps when splash is missing

This commit is contained in:
psucien 2024-05-16 09:07:03 +02:00 committed by georgemoralis
parent 77cf875585
commit 38061ae636
2 changed files with 8 additions and 2 deletions

View File

@ -622,7 +622,9 @@ public:
void SubmitDone() { void SubmitDone() {
// This is wrong as `submitDone()` should never be blocking. The behavior will be // This is wrong as `submitDone()` should never be blocking. The behavior will be
// reworked with mutiple queues introduction // reworked with mutiple queues introduction
cp.get(); if (cp.valid()) {
cp.get();
}
} }
private: private:

View File

@ -161,13 +161,17 @@ void RendererVulkan::RecreateFrame(Frame* frame, u32 width, u32 height) {
} }
bool RendererVulkan::ShowSplash(Frame* frame /*= nullptr*/) { bool RendererVulkan::ShowSplash(Frame* frame /*= nullptr*/) {
const auto* splash = Common::Singleton<Splash>::Instance();
if (splash->GetImageData().empty()) {
return false;
}
if (!Libraries::SystemService::IsSplashVisible()) { if (!Libraries::SystemService::IsSplashVisible()) {
return false; return false;
} }
if (!frame) { if (!frame) {
if (!splash_img.has_value()) { if (!splash_img.has_value()) {
const auto* splash = Common::Singleton<Splash>::Instance();
VideoCore::ImageInfo info{}; VideoCore::ImageInfo info{};
info.pixel_format = vk::Format::eR8G8B8A8Srgb; info.pixel_format = vk::Format::eR8G8B8A8Srgb;