diff options
| author | Mark Rowe <mark@vector35.com> | 2025-07-07 22:25:22 -0700 |
|---|---|---|
| committer | Mark Rowe <mark@vector35.com> | 2025-07-08 23:26:48 -0700 |
| commit | 3228382c8f96a162d34dd20ce6f7ba0f235c179a (patch) | |
| tree | 990e0cf41e0dd61cf872a44186b56e37c7b5132e /plugins/rtti | |
| parent | a3af1917724a6b652e72927a0fe8a550cc976a40 (diff) | |
[RTTI] Fix leak of BackgroundTask
Diffstat (limited to 'plugins/rtti')
| -rw-r--r-- | plugins/rtti/itanium.cpp | 4 | ||||
| -rw-r--r-- | plugins/rtti/microsoft.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/plugins/rtti/itanium.cpp b/plugins/rtti/itanium.cpp index c2f1089b..ad6d6e6d 100644 --- a/plugins/rtti/itanium.cpp +++ b/plugins/rtti/itanium.cpp @@ -731,7 +731,7 @@ ItaniumRTTIProcessor::ItaniumRTTIProcessor(const Ref<BinaryView> &view, bool use void ItaniumRTTIProcessor::ProcessRTTI() { - auto bgTask = new BackgroundTask("Scanning for Itanium RTTI...", true); + Ref<BackgroundTask> bgTask = new BackgroundTask("Scanning for Itanium RTTI...", true); auto start_time = std::chrono::high_resolution_clock::now(); auto addrSize = m_view->GetAddressSize(); uint64_t maxTypeInfoSize = TypeInfoSize(m_view); @@ -820,7 +820,7 @@ void ItaniumRTTIProcessor::ProcessRTTI() void ItaniumRTTIProcessor::ProcessVFT() { - auto bgTask = new BackgroundTask("Scanning for Itanium VFTs...", true); + Ref<BackgroundTask> bgTask = new BackgroundTask("Scanning for Itanium VFTs...", true); BinaryReader optReader = BinaryReader(m_view); std::map<uint64_t, std::set<uint64_t>> vftMap = {}; std::map<uint64_t, std::optional<VirtualFunctionTableInfo>> vftFinishedMap = {}; diff --git a/plugins/rtti/microsoft.cpp b/plugins/rtti/microsoft.cpp index de91b16a..8c0d65e7 100644 --- a/plugins/rtti/microsoft.cpp +++ b/plugins/rtti/microsoft.cpp @@ -639,7 +639,7 @@ MicrosoftRTTIProcessor::MicrosoftRTTIProcessor(const Ref<BinaryView> &view, bool void MicrosoftRTTIProcessor::ProcessRTTI() { - auto bgTask = new BackgroundTask("Scanning for Microsoft RTTI...", true); + Ref<BackgroundTask> bgTask = new BackgroundTask("Scanning for Microsoft RTTI...", true); auto start_time = std::chrono::high_resolution_clock::now(); uint64_t startAddr = m_view->GetOriginalImageBase(); uint64_t endAddr = m_view->GetEnd(); @@ -714,7 +714,7 @@ void MicrosoftRTTIProcessor::ProcessRTTI() void MicrosoftRTTIProcessor::ProcessVFT() { - auto bgTask = new BackgroundTask("Scanning for Microsoft VFT...", true); + Ref<BackgroundTask> bgTask = new BackgroundTask("Scanning for Microsoft VFT...", true); std::map<uint64_t, uint64_t> vftMap = {}; std::unordered_set<uint64_t> vftFinished = {}; auto start_time = std::chrono::high_resolution_clock::now(); |
