From 7d85a8b6fc110095140aad6c6e9186fae12addee Mon Sep 17 00:00:00 2001 From: WerWolv Date: Sat, 20 Aug 2022 14:04:12 +0200 Subject: [PATCH] fix: Providers not being closed correctly Fixes #692 --- lib/libimhex/source/api/imhex_api.cpp | 1 + lib/libimhex/source/providers/provider.cpp | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libimhex/source/api/imhex_api.cpp b/lib/libimhex/source/api/imhex_api.cpp index 7283bd50b..62f583742 100644 --- a/lib/libimhex/source/api/imhex_api.cpp +++ b/lib/libimhex/source/api/imhex_api.cpp @@ -307,6 +307,7 @@ namespace hex { else if (it - s_providers.begin() == s_currentProvider) setCurrentProvider(0); + provider->close(); delete provider; } diff --git a/lib/libimhex/source/providers/provider.cpp b/lib/libimhex/source/providers/provider.cpp index 7169bd210..f29d8e79e 100644 --- a/lib/libimhex/source/providers/provider.cpp +++ b/lib/libimhex/source/providers/provider.cpp @@ -19,7 +19,6 @@ namespace hex::prv { Provider::~Provider() { for (auto &overlay : this->m_overlays) this->deleteOverlay(overlay); - this->close(); } void Provider::read(u64 offset, void *buffer, size_t size, bool overlays) {