From eaccfcb8fd1b8e79f123d20409be7087e73f73b7 Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Tue, 21 Oct 2025 12:29:25 -0500 Subject: [PATCH] [bug] Mount state is not being removed after unmount on Windows #65 --- CHANGELOG.md | 1 + repertory/librepertory/src/platform/win32_platform.cpp | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 58f0bad0..070d113f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ### Issues * \#21 [unit test] Complete WinFSP unit tests +* \#65 [bug] Mount state is not being removed after unmount on Windows ## v2.1.0-rc diff --git a/repertory/librepertory/src/platform/win32_platform.cpp b/repertory/librepertory/src/platform/win32_platform.cpp index 8cbce60c..9a4a98b8 100644 --- a/repertory/librepertory/src/platform/win32_platform.cpp +++ b/repertory/librepertory/src/platform/win32_platform.cpp @@ -174,10 +174,11 @@ auto lock_data::set_mount_state(bool active, std::string_view mount_location, if (mount_location.empty() && not active) { ::RegCloseKey(key); - if (::RegCreateKeyExA(HKEY_CURRENT_USER, - create_lock_key(dir_id_, mutex_id_).c_str(), 0, - nullptr, 0, KEY_ALL_ACCESS, nullptr, &key, - nullptr) != ERROR_SUCCESS) { + if (::RegCreateKeyExA( + HKEY_CURRENT_USER, + fmt::format(R"(SOFTWARE\{}\Lock\{})", REPERTORY_DATA_NAME, dir_id), + 0, nullptr, 0, KEY_ALL_ACCESS, nullptr, &key, + nullptr) != ERROR_SUCCESS) { return false; }