From 8f3f2f0b32f305d69d1ced95bb0b8083a32b4256 Mon Sep 17 00:00:00 2001 From: EntireTwix Date: Mon, 3 May 2021 17:31:21 -0700 Subject: [PATCH] :bug: fixed logging broken --- include/bank.hpp | 7 ++----- include/log.hpp | 14 ++++++++++---- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/include/bank.hpp b/include/bank.hpp index fc92d85..bcc69f3 100644 --- a/include/bank.hpp +++ b/include/bank.hpp @@ -107,6 +107,7 @@ public: { Transaction temp(a_name, b_name, amount); Transaction temp2 = temp; + std::cout << temp.from << ' ' << temp.to << '\n'; users.modify_if(a_name, [&temp](User &a) { a.log.AddTrans(std::move(temp)); }); @@ -176,12 +177,8 @@ public: return; } - for (uint32_t i = 0; i < u.log.data.size(); ++i) + for (uint32_t i = 0; i < u.log.data.size() && u.log.data[i].amount; ++i) { - if (!u.log.data[i].amount) - { - break; - } res[i]["to"] = u.log.data[i].to; res[i]["from"] = u.log.data[i].from; res[i]["amount"] = u.log.data[i].amount; diff --git a/include/log.hpp b/include/log.hpp index e129078..aa7bee5 100644 --- a/include/log.hpp +++ b/include/log.hpp @@ -6,21 +6,27 @@ struct Log { std::vector data; + uint32_t end = 0; void AddTrans(Transaction &&v) { if (!data.size()) { data.resize(50); } - for (size_t i = 1; i < data.size(); ++i) + if (end) { - if (!data[i].amount) + for (uint32_t i = end; i > 0; --i) { + std::cout << i << '\n'; data[i] = std::move(data[i - 1]); - break; } - data[i] = std::move(data[i - 1]); } data[0] = std::move(v); + if (end < 50) + { + ++end; + } } }; + +//[*][*][]