From fc986f87fd256e2cfdd5edcc5b0cf14faf694441 Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Wed, 11 Jan 2017 16:52:33 +0100 Subject: Use atomic_exchange for atomic operations Signed-off-by: Szczepan Zalega --- include/device.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/include/device.h b/include/device.h index 938fc75..42865ee 100644 --- a/include/device.h +++ b/include/device.h @@ -6,8 +6,6 @@ #define HID_REPORT_SIZE 65 -// TODO !! SEMAPHORE - #include namespace nitrokey { @@ -60,7 +58,7 @@ public: std::chrono::milliseconds get_retry_timeout() const { return m_retry_timeout; }; std::chrono::milliseconds get_send_receive_delay() const {return m_send_receive_delay;} - int get_last_command_status() {int a = last_command_status; last_command_status = 0; return a;}; + int get_last_command_status() {int a = std::atomic_exchange(&last_command_status, static_cast(0)); return a;}; void set_last_command_status(uint8_t _err) { last_command_status = _err;} ; bool last_command_sucessfull() const {return last_command_status == 0;}; DeviceModel get_device_model() const {return m_model;} -- cgit v1.2.3