summaryrefslogtreecommitdiff
path: root/view/kernelcache/api/kernelcache.cpp
diff options
context:
space:
mode:
authorAlexander Khosrowshahi <alexk@vector35.com>2025-06-02 17:35:28 -0400
committerAlexander Taylor <alex@vector35.com>2025-06-04 14:13:45 -0400
commit368407b09eba7c5d09689ac81eaadd1645820edd (patch)
treedef58a37155744cf7ac2427a3f143efb807d1e12 /view/kernelcache/api/kernelcache.cpp
parent9c8d4eac3dadf6273b34ba193c219de9283285b3 (diff)
Fix calls to BNFreeString in kernel cache API
Amends calls to BNFreeString in kernel cache API that were causing `get_macho_header_for_address`, `get_macho_header_for_image`, `get_image_name_for_address`, and `get_name_for_address` to fail. Fixes https://github.com/Vector35/binaryninja-api/issues/6855
Diffstat (limited to 'view/kernelcache/api/kernelcache.cpp')
-rw-r--r--view/kernelcache/api/kernelcache.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/view/kernelcache/api/kernelcache.cpp b/view/kernelcache/api/kernelcache.cpp
index 86cd8e0d..7a650660 100644
--- a/view/kernelcache/api/kernelcache.cpp
+++ b/view/kernelcache/api/kernelcache.cpp
@@ -20,10 +20,9 @@ namespace KernelCacheAPI {
return BNKCViewFastGetImageCount(view->GetObject());
}
- bool KernelCache::LoadImageWithInstallName(std::string installName)
+ bool KernelCache::LoadImageWithInstallName(const std::string& installName)
{
- char* str = BNAllocString(installName.c_str());
- return BNKCViewLoadImageWithInstallName(m_object, str);
+ return BNKCViewLoadImageWithInstallName(m_object, installName.c_str());
}
bool KernelCache::LoadImageContainingAddress(uint64_t addr)
@@ -161,10 +160,9 @@ namespace KernelCacheAPI {
return result;
}
- std::optional<KernelCacheMachOHeader> KernelCache::GetMachOHeaderForImage(std::string name)
+ std::optional<KernelCacheMachOHeader> KernelCache::GetMachOHeaderForImage(const std::string& name)
{
- char* str = BNAllocString(name.c_str());
- char* outputStr = BNKCViewGetImageHeaderForName(m_object, str);
+ char* outputStr = BNKCViewGetImageHeaderForName(m_object, name.c_str());
if (outputStr == nullptr)
return {};
std::string output = outputStr;