diff --git a/include/spdlog/async_logger.h b/include/spdlog/async_logger.h index 932d7fb3..4b538f10 100644 --- a/include/spdlog/async_logger.h +++ b/include/spdlog/async_logger.h @@ -58,7 +58,7 @@ public: std::shared_ptr clone(std::string new_name) override; protected: - void sink_it_(details::log_msg &msg) override; + void sink_it_(const details::log_msg &msg) override; void flush_() override; void backend_log_(const details::log_msg &incoming_log_msg); diff --git a/include/spdlog/details/async_logger_impl.h b/include/spdlog/details/async_logger_impl.h index 55df4313..9c4d7616 100644 --- a/include/spdlog/details/async_logger_impl.h +++ b/include/spdlog/details/async_logger_impl.h @@ -36,14 +36,14 @@ inline spdlog::async_logger::async_logger( } // send the log message to the thread pool -inline void spdlog::async_logger::sink_it_(details::log_msg &msg) +inline void spdlog::async_logger::sink_it_(const details::log_msg &msg) { #if defined(SPDLOG_ENABLE_MESSAGE_COUNTER) incr_msg_counter_(msg); #endif if (auto pool_ptr = thread_pool_.lock()) { - pool_ptr->post_log(shared_from_this(), std::move(msg), overflow_policy_); + pool_ptr->post_log(shared_from_this(), msg, overflow_policy_); } else { diff --git a/include/spdlog/details/logger_impl.h b/include/spdlog/details/logger_impl.h index f812c025..d790d919 100644 --- a/include/spdlog/details/logger_impl.h +++ b/include/spdlog/details/logger_impl.h @@ -296,7 +296,7 @@ inline bool spdlog::logger::should_log(spdlog::level::level_enum msg_level) cons // protected virtual called at end of each user log call (if enabled) by the // line_logger // -inline void spdlog::logger::sink_it_(details::log_msg &msg) +inline void spdlog::logger::sink_it_(const details::log_msg &msg) { #if defined(SPDLOG_ENABLE_MESSAGE_COUNTER) incr_msg_counter_(msg); diff --git a/include/spdlog/details/thread_pool.h b/include/spdlog/details/thread_pool.h index b7eb6caa..09d8d71c 100644 --- a/include/spdlog/details/thread_pool.h +++ b/include/spdlog/details/thread_pool.h @@ -69,7 +69,7 @@ struct async_msg #endif // construct from log_msg with given type - async_msg(async_logger_ptr &&worker, async_msg_type the_type, details::log_msg &&m) + async_msg(async_logger_ptr &&worker, async_msg_type the_type, const details::log_msg &m) : msg_type(the_type) , level(m.level) , time(m.time) @@ -146,9 +146,9 @@ public: } } - void post_log(async_logger_ptr &&worker_ptr, details::log_msg &&msg, async_overflow_policy overflow_policy) + void post_log(async_logger_ptr &&worker_ptr, const details::log_msg &msg, async_overflow_policy overflow_policy) { - async_msg async_m(std::forward(worker_ptr), async_msg_type::log, std::forward(msg)); + async_msg async_m(std::forward(worker_ptr), async_msg_type::log, msg); post_async_msg_(std::move(async_m), overflow_policy); } diff --git a/include/spdlog/logger.h b/include/spdlog/logger.h index aa524f70..e8a238fb 100644 --- a/include/spdlog/logger.h +++ b/include/spdlog/logger.h @@ -137,7 +137,7 @@ public: virtual std::shared_ptr clone(std::string logger_name); protected: - virtual void sink_it_(details::log_msg &msg); + virtual void sink_it_(const details::log_msg &msg); virtual void flush_(); bool should_flush_(const details::log_msg &msg);