diff options
| author | kat <kat@vector35.com> | 2024-10-28 12:58:23 -0400 |
|---|---|---|
| committer | kat <kat@vector35.com> | 2024-10-28 12:58:51 -0400 |
| commit | fc5ffbbcfbc16402583a9e05d7db3036ad587066 (patch) | |
| tree | 1448f57740483206a1fa688e605724188129ea05 /view/sharedcache/core/SharedCache.cpp | |
| parent | 07bce5f257d30061475452ec9c2e06a132747b54 (diff) | |
[SharedCache] Warnings Cleanup
Diffstat (limited to 'view/sharedcache/core/SharedCache.cpp')
| -rw-r--r-- | view/sharedcache/core/SharedCache.cpp | 42 |
1 files changed, 19 insertions, 23 deletions
diff --git a/view/sharedcache/core/SharedCache.cpp b/view/sharedcache/core/SharedCache.cpp index d468ff9a..a597cfb5 100644 --- a/view/sharedcache/core/SharedCache.cpp +++ b/view/sharedcache/core/SharedCache.cpp @@ -1341,33 +1341,29 @@ SharedCache::SharedCache(BinaryNinja::Ref<BinaryNinja::BinaryView> dscView) : m_ { if (m_viewState == DSCViewStateUnloaded) { - // maybe we are getting called from UI thread. probably. do this on a separate thread just in case. - // TODO `wait` argument - WorkerEnqueue([this]() { - std::unique_lock<std::mutex> lock(viewSpecificMutexes[m_dscView->GetFile()->GetSessionId()].viewOperationsThatInfluenceMetadataMutex); - try { - PerformInitialLoad(); - } - catch (...) - { - m_logger->LogError("Failed to perform initial load of Shared Cache"); - } + std::unique_lock<std::mutex> lock(viewSpecificMutexes[m_dscView->GetFile()->GetSessionId()].viewOperationsThatInfluenceMetadataMutex); + try { + PerformInitialLoad(); + } + catch (...) + { + m_logger->LogError("Failed to perform initial load of Shared Cache"); + } - for (const auto& [_, header] : m_headers) + for (const auto& [_, header] : m_headers) + { + if (header.installName.find("libsystem_c.dylib") != std::string::npos) { - if (header.installName.find("libsystem_c.dylib") != std::string::npos) - { - lock.unlock(); - m_logger->LogInfo("Loading core libsystem_c.dylib library"); - LoadImageWithInstallName(header.installName); - lock.lock(); - break ; - } + lock.unlock(); + m_logger->LogInfo("Loading core libsystem_c.dylib library"); + LoadImageWithInstallName(header.installName); + lock.lock(); + break ; } + } - m_viewState = DSCViewStateLoaded; - SaveToDSCView(); - }); + m_viewState = DSCViewStateLoaded; + SaveToDSCView(); } } else |
