From 76cb473170f05d231ffa74d307f41fa3b07b3094 Mon Sep 17 00:00:00 2001 From: Christophe Date: Thu, 10 Aug 2023 18:22:20 +0200 Subject: [PATCH] layer: Fix query of capabilities of aliased extensions --- CHANGELOG.md | 1 + scripts/gen_profiles_layer.py | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 251534d9..e5a5a060 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ ## [Vulkan Profiles Toolset 1.3.261](https://github.com/KhronosGroup/Vulkan-Profiles/tree/main) - August 2023 ### Bugfixes: +- Fix query of capabilities of aliased extensions - Fix error message typo ## [Vulkan Profiles Toolset 1.3.250](https://github.com/KhronosGroup/Vulkan-Profiles/tree/sdk-1.3.250.0) - June 2023 diff --git a/scripts/gen_profiles_layer.py b/scripts/gen_profiles_layer.py index c8854c00..0fd6f21c 100644 --- a/scripts/gen_profiles_layer.py +++ b/scripts/gen_profiles_layer.py @@ -3323,8 +3323,16 @@ def generate_fill_case(self, struct): first = False else: gen += ' && ' - gen += 'PhysicalDeviceData::HasSimulatedExtension(physicalDeviceData, ' - gen += registry.extensions[ext].upperCaseName + '_EXTENSION_NAME' + promotedTo = ext + while promotedTo != None and promotedTo in registry.extensions: + if promotedTo != ext: + gen += ' || ' + else: + gen += '(' + gen += 'PhysicalDeviceData::HasSimulatedExtension(physicalDeviceData, ' + gen += registry.extensions[promotedTo].upperCaseName + '_EXTENSION_NAME' + gen += ')' + promotedTo = registry.extensions[promotedTo].promotedTo gen += ')' gen += ') ' elif structure.definedByVersion and (structure.definedByVersion.major != 1 or structure.definedByVersion.minor != 0):