aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCourtney Goeltzenleuchter <courtney@LunarG.com>2015-02-25 16:58:34 -0700
committerCourtney Goeltzenleuchter <courtney@LunarG.com>2015-02-25 17:25:09 -0700
commitf972db03b2c7f49f64c29b00360844c748cf77f8 (patch)
tree6f4a952e15f307860af5af05da6bad170be2cf59
parent0d499a05276eb9f205a40cf45b35ca077ecfd702 (diff)
downloadusermoji-f972db03b2c7f49f64c29b00360844c748cf77f8.tar.xz
layers: Track WsiCreatePresentableImage image object
The memory returned by WsiGetPresentableImage is unique and cannot be freed or unbound by the app. Thus only object tracker only needs to track the image object.
-rwxr-xr-xxgl-layer-generate.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/xgl-layer-generate.py b/xgl-layer-generate.py
index 1cb8e2e8..b064e5f4 100755
--- a/xgl-layer-generate.py
+++ b/xgl-layer-generate.py
@@ -627,6 +627,10 @@ class Subcommand(object):
create_line += ' ll_insert_obj((void*)pDescriptorSets[i], XGL_OBJECT_TYPE_DESCRIPTOR_SET);\n'
create_line += ' loader_platform_thread_unlock_mutex(&objLock);\n'
create_line += ' }\n'
+ elif 'CreatePresentableImage' in proto.name:
+ create_line = ' loader_platform_thread_lock_mutex(&objLock);\n'
+ create_line += ' ll_insert_obj((void*)*%s, %s);\n' % (proto.params[-2].name, obj_type_mapping[proto.params[-2].ty.strip('*').strip('const ')])
+ create_line += ' loader_platform_thread_unlock_mutex(&objLock);\n'
elif 'Create' in proto.name or 'Alloc' in proto.name:
create_line = ' loader_platform_thread_lock_mutex(&objLock);\n'
create_line += ' ll_insert_obj((void*)*%s, %s);\n' % (proto.params[-1].name, obj_type_mapping[proto.params[-1].ty.strip('*').strip('const ')])