diff options
| -rw-r--r-- | architecture.cpp | 5 | ||||
| -rw-r--r-- | datarenderer.cpp | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/architecture.cpp b/architecture.cpp index da0366cf..f7ec2d01 100644 --- a/architecture.cpp +++ b/architecture.cpp @@ -228,7 +228,12 @@ bool Architecture::GetInstructionTextCallback(void* ctxt, const uint8_t* data, u void Architecture::FreeInstructionTextCallback(BNInstructionTextToken* tokens, size_t count) { for (size_t i = 0; i < count; i++) + { BNFreeString(tokens[i].text); + for (size_t j = 0; j < tokens[j].namesCount; j++) + BNFreeString(tokens[i].typeNames[j]); + delete[] tokens[i].typeNames; + } delete[] tokens; } diff --git a/datarenderer.cpp b/datarenderer.cpp index bc33366e..c0536a6a 100644 --- a/datarenderer.cpp +++ b/datarenderer.cpp @@ -113,8 +113,12 @@ vector<DisassemblyTextLine> DataRenderer::GetLinesForData(BinaryView* data, uint delete[] typeCtx; for (size_t i = 0; i < prefix.size(); i++) + { BNFreeString(prefixes[i].text); - + for (size_t j = 0; j < prefixes[j].namesCount; j++) + BNFreeString(prefixes[i].typeNames[j]); + delete[] prefixes[i].typeNames; + } delete[] prefixes; vector<DisassemblyTextLine> result; |
