summaryrefslogtreecommitdiff
path: root/view/kernelcache/core/KernelCache.cpp
diff options
context:
space:
mode:
authorAlexander Taylor <alex@vector35.com>2025-04-16 10:21:22 -0400
committerAlexander Taylor <alex@vector35.com>2025-04-16 10:21:22 -0400
commitca696ab4a79902d0448135f6fca3769f0576e39d (patch)
tree3aabbba81e4968c03289c5d10eea5340f15597ce /view/kernelcache/core/KernelCache.cpp
parent77c3bf786be64267cb7f45d9d0f118fcbf6d8aea (diff)
Add loaded column for kernel cache view.
Required adding an API to determine if an image is loaded.
Diffstat (limited to 'view/kernelcache/core/KernelCache.cpp')
-rw-r--r--view/kernelcache/core/KernelCache.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/view/kernelcache/core/KernelCache.cpp b/view/kernelcache/core/KernelCache.cpp
index 0944e92a..be6a4eb6 100644
--- a/view/kernelcache/core/KernelCache.cpp
+++ b/view/kernelcache/core/KernelCache.cpp
@@ -1902,6 +1902,13 @@ std::vector<KernelCacheImage> KernelCache::GetLoadedImages()
}
+bool KernelCache::IsImageLoaded(uint64_t address)
+{
+ std::lock_guard lock(m_viewSpecificState->stateMutex);
+ return m_viewSpecificState->state.loadedImages.find(address)!= m_viewSpecificState->state.loadedImages.end();
+}
+
+
std::vector<std::pair<uint64_t, std::pair<std::string, std::string>>> KernelCache::LoadAllSymbolsAndWait()
{
std::vector<std::pair<uint64_t, std::pair<std::string, std::string>>> symbols;
@@ -2159,6 +2166,14 @@ extern "C"
return false;
}
+ bool BNKCViewIsImageLoaded(BNKernelCache* cache, uint64_t address)
+ {
+ if (cache->object)
+ return cache->object->IsImageLoaded(address);
+
+ return false;
+ }
+
char** BNKCViewGetInstallNames(BNKernelCache* cache, size_t* count)
{
if (cache->object)