From 2f3c3459a81833ae59f78900d86d97fcc3e7006a Mon Sep 17 00:00:00 2001 From: Bo Hu Date: Mon, 6 Jan 2025 15:20:46 -0800 Subject: [PATCH] update decoder.py to clean up un-used ApiCallInfo It is normal for vk decoder to consume nothing from the stream, as it could be either gl or render control commands. Reviewed-by: Marcin Radomski Part-of: --- src/gfxstream/codegen/scripts/cereal/decoder.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gfxstream/codegen/scripts/cereal/decoder.py b/src/gfxstream/codegen/scripts/cereal/decoder.py index 029d86dc904..2b2cee5f21f 100644 --- a/src/gfxstream/codegen/scripts/cereal/decoder.py +++ b/src/gfxstream/codegen/scripts/cereal/decoder.py @@ -964,6 +964,12 @@ size_t VkDecoder::Impl::decode(void* buf, size_t len, IOStream* ioStream, def onEnd(self,): self.cgen.line("default:") self.cgen.beginBlock() + self.cgen.line(""" + if (m_snapshotsEnabled) { + m_state->snapshot()->destroyApiCallInfoIfUnused(%s); + } + """ % (SNAPSHOT_API_CALL_INFO_VARNAME)) + self.cgen.stmt("m_pool.freeAll()") self.cgen.stmt("return ptr - (unsigned char *)buf") self.cgen.endBlock()