From f972db03b2c7f49f64c29b00360844c748cf77f8 Mon Sep 17 00:00:00 2001 From: Courtney Goeltzenleuchter Date: Wed, 25 Feb 2015 16:58:34 -0700 Subject: 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. --- xgl-layer-generate.py | 4 ++++ 1 file changed, 4 insertions(+) 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 ')]) -- cgit v1.2.3