diff options
| author | Jon Ashburn <jon@lunarg.com> | 2015-02-03 08:57:28 -0700 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-02-04 17:58:11 -0700 |
| commit | a3350c10684f8eb6735f73e11b264e7ae7e284c7 (patch) | |
| tree | 14b6e66b0d18dfa0c8184d43f490dc92854b5839 | |
| parent | c8c27d2c97c38b1ed38a8a9bd1e74dbde628275b (diff) | |
| download | usermoji-a3350c10684f8eb6735f73e11b264e7ae7e284c7.tar.xz | |
glave: Fix tracing CreateInstance appInfo and replay DestroyInstance rm map
| -rwxr-xr-x | glave-generate.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/glave-generate.py b/glave-generate.py index 4d40b73c..d9ef1bd5 100755 --- a/glave-generate.py +++ b/glave-generate.py @@ -508,6 +508,8 @@ class Subcommand(object): for idx in buff_ptr_indices: if 'DEVICE_CREATE_INFO' in proto.params[idx].ty: func_body.append(' add_XGL_DEVICE_CREATE_INFO_to_packet(pHeader, (XGL_DEVICE_CREATE_INFO**) &(pPacket->pCreateInfo), pCreateInfo);') + elif 'APPLICATION_INFO' in proto.params[idx].ty: + func_body.append(' add_XGL_APPLICATION_INFO_to_packet(pHeader, (XGL_APPLICATION_INFO**)&(pPacket->pAppInfo), pAppInfo);') elif 'char' in proto.params[idx].ty: func_body.append(' glv_add_buffer_to_trace_packet(pHeader, (void**)&(pPacket->%s), ((%s != NULL) ? strlen(%s) + 1 : 0), %s);' % (proto.params[idx].name, proto.params[idx].name, proto.params[idx].name, proto.params[idx].name)) elif 'Count' in proto.params[idx-1].name and 'queryCount' != proto.params[idx-1].name: @@ -560,7 +562,7 @@ class Subcommand(object): if 'void' not in proto.ret or '*' in proto.ret: func_body.append(' pPacket->result = result;') for idx in buff_ptr_indices: - if 'DEVICE_CREATE_INFO' not in proto.params[idx].ty: + if ('DEVICE_CREATE_INFO' not in proto.params[idx].ty) and ('APPLICATION_INFO' not in proto.params[idx].ty): func_body.append(' glv_finalize_buffer_address(pHeader, (void**)&(pPacket->%s));' % (proto.params[idx].name)) func_body.append(' FINISH_TRACE_PACKET();') if 'AllocMemory' in proto.name: @@ -2696,8 +2698,8 @@ class Subcommand(object): rbody.append(' XGL_RESULT replayResult = XGL_ERROR_UNKNOWN;') rbody.append(' switch (packet->packet_id)') rbody.append(' {') - rbody.append(' case GLV_TPI_XGL_xglApiVersion:') - rbody.append(' break; // nothing to replay on the version packet') + rbody.append(' case GLV_TPI_XGL_xglApiVersion:') + rbody.append(' break; // nothing to replay on the version packet') for proto in self.protos: ret_value = False create_view = False @@ -2813,6 +2815,11 @@ class Subcommand(object): rbody.append(' rm_from_map(pPacket->device);') rbody.append(' m_display->m_initedXGL = false;') rbody.append(' }') + if 'DestroyInstance' in proto.name: + rbody.append(' if (replayResult == XGL_SUCCESS)') + rbody.append(' {') + rbody.append(' rm_from_map(pPacket->instance);') + rbody.append(' }') elif 'AllocDescriptorSets' in proto.name: rbody.append(' if (replayResult == XGL_SUCCESS)') rbody.append(' {') |
