From 352cbc2816f1ed1c391cf78203c5936ea78a4d4c Mon Sep 17 00:00:00 2001 From: PancakeTAS Date: Fri, 18 Jul 2025 14:04:21 +0200 Subject: [PATCH] check all shaders are loaded early --- src/extract/extract.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/extract/extract.cpp b/src/extract/extract.cpp index ea9b7f8..108336a 100644 --- a/src/extract/extract.cpp +++ b/src/extract/extract.cpp @@ -125,6 +125,11 @@ void Extract::extractShaders() { throw std::runtime_error("Unable to read Lossless.dll, is it installed?"); peparse::IterRsrc(dll, on_resource, nullptr); peparse::DestructParsedPE(dll); + + // ensure all shaders are present + for (const auto& [name, idx] : nameIdxTable) + if (shaders().find(idx) == shaders().end()) + throw std::runtime_error("Shader not found: " + name + ".\nIs Lossless Scaling up to date?"); } std::vector Extract::getShader(const std::string& name) {