From 4d34950339f90a275af3b025ebd11dd11bd61ddd Mon Sep 17 00:00:00 2001 From: Jon Ashburn Date: Tue, 10 Feb 2015 14:32:23 -0700 Subject: glave: remap sampler object in xglCreateDescriptorSetLayout() --- glave-generate.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/glave-generate.py b/glave-generate.py index a80c05c9..3483cf17 100755 --- a/glave-generate.py +++ b/glave-generate.py @@ -2785,14 +2785,22 @@ class Subcommand(object): def _gen_replay_create_descriptor_set_layout(self): cdsl_body = [] - cdsl_body.append(' XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO createInfo;') - cdsl_body.append(' memcpy(&createInfo, pPacket->pSetLayoutInfoList, sizeof(XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO));') + cdsl_body.append(' XGL_SAMPLER saveSampler;') + cdsl_body.append(' if (pPacket->pSetLayoutInfoList != NULL) {') + cdsl_body.append(' XGL_SAMPLER *pSampler = (XGL_SAMPLER *) &pPacket->pSetLayoutInfoList->immutableSampler;') + cdsl_body.append(' saveSampler = pPacket->pSetLayoutInfoList->immutableSampler;') + cdsl_body.append(' *pSampler = remap(saveSampler);') + cdsl_body.append(' }') cdsl_body.append(' XGL_DESCRIPTOR_SET_LAYOUT setLayout;') - cdsl_body.append(' replayResult = m_xglFuncs.real_xglCreateDescriptorSetLayout(remap(pPacket->device), pPacket->stageFlags, pPacket->pSetBindPoints, remap(pPacket->priorSetLayout), &createInfo, &setLayout);') + cdsl_body.append(' replayResult = m_xglFuncs.real_xglCreateDescriptorSetLayout(remap(pPacket->device), pPacket->stageFlags, pPacket->pSetBindPoints, remap(pPacket->priorSetLayout), pPacket->pSetLayoutInfoList, &setLayout);') cdsl_body.append(' if (replayResult == XGL_SUCCESS)') cdsl_body.append(' {') cdsl_body.append(' add_to_map(pPacket->pSetLayout, &setLayout);') cdsl_body.append(' }') + cdsl_body.append(' if (pPacket->pSetLayoutInfoList != NULL) {') + cdsl_body.append(' XGL_SAMPLER *pSampler = (XGL_SAMPLER *) &pPacket->pSetLayoutInfoList->immutableSampler;') + cdsl_body.append(' *pSampler = saveSampler;') + cdsl_body.append(' }') return "\n".join(cdsl_body) def _gen_replay_create_graphics_pipeline(self): -- cgit v1.2.3