diff --git a/repertory/librepertory/include/types/repertory.hpp b/repertory/librepertory/include/types/repertory.hpp index d971bd65..0d008ac4 100644 --- a/repertory/librepertory/include/types/repertory.hpp +++ b/repertory/librepertory/include/types/repertory.hpp @@ -56,11 +56,12 @@ public: auto operator=(atomic &&) -> atomic & = default; auto operator=(const data_t &data) -> atomic & { - mutex_lock lock(*mtx_); - if (&data != &data_) { - data_ = data; + if (&data == &data_) { + return *this; } + mutex_lock lock(*mtx_); + data_ = data; return *this; }