From 2694badc937d3d25050021561d4b6d89eec3ce48 Mon Sep 17 00:00:00 2001 From: Pranav Srinivas Kumar Date: Wed, 18 Dec 2019 07:55:22 -0600 Subject: [PATCH] Added locking to .current() --- include/indicators/block_progress_bar.hpp | 5 ++++- include/indicators/progress_bar.hpp | 5 ++++- include/indicators/progress_spinner.hpp | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/include/indicators/block_progress_bar.hpp b/include/indicators/block_progress_bar.hpp index 4c8f34b..b0bf600 100644 --- a/include/indicators/block_progress_bar.hpp +++ b/include/indicators/block_progress_bar.hpp @@ -104,7 +104,10 @@ public: _print_progress(); } - size_t current() { return std::min(static_cast(_progress), size_t(100)); } + size_t current() { + std::unique_lock lock{_mutex}; + return std::min(static_cast(_progress), size_t(100)); + } bool is_completed() const { return _completed; } diff --git a/include/indicators/progress_bar.hpp b/include/indicators/progress_bar.hpp index 2ee9c2d..f225c69 100644 --- a/include/indicators/progress_bar.hpp +++ b/include/indicators/progress_bar.hpp @@ -118,7 +118,10 @@ public: _print_progress(); } - size_t current() { return std::min(static_cast(_progress), size_t(100)); } + size_t current() { + std::unique_lock lock{_mutex}; + return std::min(static_cast(_progress), size_t(100)); + } bool is_completed() const { return _completed; } diff --git a/include/indicators/progress_spinner.hpp b/include/indicators/progress_spinner.hpp index 6b62d13..c9671cd 100644 --- a/include/indicators/progress_spinner.hpp +++ b/include/indicators/progress_spinner.hpp @@ -93,7 +93,10 @@ public: _print_progress(); } - size_t current() { return std::min(static_cast(_progress), size_t(100)); } + size_t current() { + std::unique_lock lock{_mutex}; + return std::min(static_cast(_progress), size_t(100)); + } bool is_completed() const { return _completed; }