use std::atomic for additivity
diff --git a/src/main/cpp/logger.cpp b/src/main/cpp/logger.cpp
index 61f8d03..2908eda 100644
--- a/src/main/cpp/logger.cpp
+++ b/src/main/cpp/logger.cpp
@@ -495,7 +495,6 @@
void Logger::setAdditivity(bool additive1)
{
- std::shared_lock lock(mutex);
this->additive = additive1;
}
diff --git a/src/main/include/log4cxx/logger.h b/src/main/include/log4cxx/logger.h
index 66f78b6..b53b546 100644
--- a/src/main/include/log4cxx/logger.h
+++ b/src/main/include/log4cxx/logger.h
@@ -34,6 +34,7 @@
#include <log4cxx/helpers/resourcebundle.h>
#include <log4cxx/helpers/messagebuffer.h>
#include <shared_mutex>
+#include <atomic>
namespace log4cxx
{
@@ -114,7 +115,7 @@
of this logger will inherit its appenders, unless the children
have their additivity flag set to <code>false</code> too. See
the user manual for more details. */
- bool additive;
+ std::atomic<bool> additive;
protected:
friend class DefaultLoggerFactory;