aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorLenny Komow <lenny@lunarg.com>2017-10-10 13:50:20 -0600
committerMike Schuchardt <mikes@lunarg.com>2018-03-09 13:54:31 -0700
commitcde05e9fabfab8f4d13a2662b6773a5cc118d24d (patch)
tree8941b9c88088157cf7487716e341a4b739adcbea /scripts
parent68f1cbde366dae693a6ab1c9f2207986b1908176 (diff)
downloadusermoji-cde05e9fabfab8f4d13a2662b6773a5cc118d24d.tar.xz
loader: Fix crash in aliased extensions
Diffstat (limited to 'scripts')
-rw-r--r--scripts/loader_extension_generator.py17
1 files changed, 10 insertions, 7 deletions
diff --git a/scripts/loader_extension_generator.py b/scripts/loader_extension_generator.py
index 16eb78db..a4a3f8fb 100644
--- a/scripts/loader_extension_generator.py
+++ b/scripts/loader_extension_generator.py
@@ -45,7 +45,7 @@ AVOID_EXT_NAMES = ['VK_EXT_debug_report']
DEVICE_CMDS_NEED_TERM = ['vkGetDeviceProcAddr',
'vkCreateSwapchainKHR',
'vkCreateSharedSwapchainsKHR',
- 'vkGetDeviceGroupSurfacePresentModesKHX',
+ 'vkGetDeviceGroupSurfacePresentModesKHR',
'vkDebugMarkerSetObjectTagEXT',
'vkDebugMarkerSetObjectNameEXT']
@@ -596,6 +596,7 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
'vkCreateInstance',
'vkEnumerateInstanceExtensionProperties',
'vkEnumerateInstanceLayerProperties',
+ 'vkEnumerateInstanceVersion',
]
for x in range(0, 2):
@@ -751,7 +752,8 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
# Names to skip
if (base_name == 'CreateInstance' or base_name == 'CreateDevice' or
base_name == 'EnumerateInstanceExtensionProperties' or
- base_name == 'EnumerateInstanceLayerProperties'):
+ base_name == 'EnumerateInstanceLayerProperties' or
+ base_name == 'EnumerateInstanceVersion'):
continue
if cur_cmd.protect is not None:
@@ -826,7 +828,8 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
if (base_name == 'CreateInstance' or base_name == 'CreateDevice' or
base_name == 'EnumerateInstanceExtensionProperties' or
- base_name == 'EnumerateInstanceLayerProperties'):
+ base_name == 'EnumerateInstanceLayerProperties' or
+ base_name == 'EnumerateInstanceVersion'):
continue
if cur_cmd.protect is not None:
@@ -1344,8 +1347,6 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
commands = self.ext_commands
for cur_cmd in commands:
- if cur_cmd.name in ALIASED_CMDS:
- continue
if cur_cmd.handle_type == 'VkInstance' or cur_cmd.handle_type == 'VkPhysicalDevice':
if cur_cmd.ext_name != cur_extension_name:
@@ -1357,10 +1358,12 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
# Remove 'vk' from proto name
base_name = cur_cmd.name[2:]
+ aliased_name = ALIASED_CMDS[cur_cmd.name][2:] if cur_cmd.name in ALIASED_CMDS else base_name
if (base_name == 'CreateInstance' or base_name == 'CreateDevice' or
base_name == 'EnumerateInstanceExtensionProperties' or
- base_name == 'EnumerateInstanceLayerProperties'):
+ base_name == 'EnumerateInstanceLayerProperties' or
+ base_name == 'EnumerateInstanceVersion'):
continue
if cur_cmd.protect is not None:
@@ -1369,7 +1372,7 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
if base_name == 'GetInstanceProcAddr':
table += ' .%s = %s,\n' % (base_name, cur_cmd.name)
else:
- table += ' .%s = terminator_%s,\n' % (base_name, base_name)
+ table += ' .%s = terminator_%s,\n' % (base_name, aliased_name)
if cur_cmd.protect is not None:
table += '#endif // %s\n' % cur_cmd.protect