From 45eae36693251d6036c2f6e6d898137cb374575f Mon Sep 17 00:00:00 2001 From: Kai Blaschke Date: Fri, 24 Apr 2026 10:33:34 +0200 Subject: [PATCH] Fix HLSLParser: Always check preprocessor directive stack to be empty before using the top element --- vendor/hlslparser/src/HLSLParser.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/hlslparser/src/HLSLParser.cpp b/vendor/hlslparser/src/HLSLParser.cpp index 6b798d5617..03ba4d92a6 100644 --- a/vendor/hlslparser/src/HLSLParser.cpp +++ b/vendor/hlslparser/src/HLSLParser.cpp @@ -3614,7 +3614,7 @@ bool HLSLParser::ApplyPreprocessor(const char* fileName, const char* buffer, siz isCodeActive.push(true); m_tokenizer = HLSLTokenizer(fileName, buffer, length); sourcePreprocessed.clear(); - while (m_tokenizer.GetToken() != HLSLToken_EndOfStream) + while (m_tokenizer.GetToken() != HLSLToken_EndOfStream && !isCodeActive.empty()) { bool addOriginalSource = true;