The threading layer was using the generic destroy_instance
utility when it should be using the utility that takes
a map.
void destroy_device_dispatch_table(dispatch_key key);
void destroy_instance_dispatch_table(dispatch_key key);
+void destroy_dispatch_table(device_table_map &map, dispatch_key key);
+void destroy_dispatch_table(instance_table_map &map, dispatch_key key);
' dispatch_key key = get_dispatch_key(instance);\n'
' VkLayerInstanceDispatchTable *pInstanceTable = get_dispatch_table(threading_instance_table_map, %s);\n' % proto.params[0].name +
' %spInstanceTable->%s;\n' % (ret_val, proto.c_call()) +
- ' destroy_instance_dispatch_table(key);\n'
+ ' destroy_dispatch_table(threading_instance_table_map, key);\n'
'\n'
' // Clean up logging callback, if any\n'
' layer_data *my_data = get_my_data_ptr(key, layer_data_map);\n'