From d28164d02f5bff3a6e68daf1eb6b544018db1c9b Mon Sep 17 00:00:00 2001 From: WarmUpTill Date: Wed, 8 May 2024 19:36:54 +0200 Subject: [PATCH] Fix initial replay buffer save not triggering condition --- plugins/base/macro-condition-replay-buffer.cpp | 12 +++++++----- plugins/base/macro-condition-replay-buffer.hpp | 1 + 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/plugins/base/macro-condition-replay-buffer.cpp b/plugins/base/macro-condition-replay-buffer.cpp index e6e5d2a3..55828894 100644 --- a/plugins/base/macro-condition-replay-buffer.cpp +++ b/plugins/base/macro-condition-replay-buffer.cpp @@ -45,11 +45,13 @@ static bool setupReplayBufferEventHandler() bool MacroConditionReplayBuffer::ReplayBufferWasSaved() { - bool timersAreInitialized = - _saveTime.time_since_epoch().count() != 0 && - replayBufferSaveTime.time_since_epoch().count() != 0; - bool newSaveOccurred = timersAreInitialized && - _saveTime != replayBufferSaveTime; + if (!_saveTimeInitialized) { + _saveTime = replayBufferSaveTime; + _saveTimeInitialized = true; + return false; + } + + bool newSaveOccurred = _saveTime != replayBufferSaveTime; _saveTime = replayBufferSaveTime; return newSaveOccurred; } diff --git a/plugins/base/macro-condition-replay-buffer.hpp b/plugins/base/macro-condition-replay-buffer.hpp index 8e34e67a..d0e0c820 100644 --- a/plugins/base/macro-condition-replay-buffer.hpp +++ b/plugins/base/macro-condition-replay-buffer.hpp @@ -29,6 +29,7 @@ public: private: bool ReplayBufferWasSaved(); + bool _saveTimeInitialized = false; std::chrono::high_resolution_clock::time_point _saveTime = {}; static bool _registered; static const std::string id;