From 2d62f51006d90462d0131cebfcab3ae4e98cf7ad Mon Sep 17 00:00:00 2001 From: William Katz Date: Thu, 15 Jul 2021 01:47:27 -0700 Subject: [PATCH] :bug::fire::lock: possible safety concern if interior while auto saving May corrupt as static, one thread could clear as the other is copying for example --- src/bank.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bank.cpp b/src/bank.cpp index 065cf24..acda448 100644 --- a/src/bank.cpp +++ b/src/bank.cpp @@ -289,12 +289,12 @@ const char *Bank::Save() ) { #endif - static std::ofstream users_save(users_location, std::ios::out | std::ios::binary); + std::ofstream users_save(users_location, std::ios::out | std::ios::binary); if (!users_save.is_open()) { throw std::invalid_argument("Cannot access saving file\n"); } - static bank_dom::Global users_copy; + bank_dom::Global users_copy; users_copy.users.clear(); users_copy.keys.clear(); users_copy.users.reserve(users.size()); @@ -310,7 +310,7 @@ const char *Bank::Save() }); } } - static FBE::bank_dom::GlobalFinalModel writer; + FBE::bank_dom::GlobalFinalModel writer; writer.serialize(users_copy); if (!writer.verify()) {