diff --git a/include/spdlog/async.h b/include/spdlog/async.h index 9c3e9551..9264a4e3 100644 --- a/include/spdlog/async.h +++ b/include/spdlog/async.h @@ -37,7 +37,7 @@ template struct async_factory_impl { template - static std::shared_ptr create(const std::string &logger_name, SinkArgs &&... args) + static std::shared_ptr create(std::string logger_name, SinkArgs &&... args) { auto ®istry_inst = details::registry::instance(); @@ -51,7 +51,7 @@ struct async_factory_impl } auto sink = std::make_shared(std::forward(args)...); - auto new_logger = std::make_shared(logger_name, std::move(sink), std::move(tp), OverflowPolicy); + auto new_logger = std::make_shared(std::move(logger_name), std::move(sink), std::move(tp), OverflowPolicy); registry_inst.register_and_init(new_logger); return new_logger; } @@ -61,15 +61,15 @@ using async_factory = async_factory_impl; using async_factory_nonblock = async_factory_impl; template -inline std::shared_ptr create_async(const std::string &logger_name, SinkArgs &&... sink_args) +inline std::shared_ptr create_async(std::string logger_name, SinkArgs &&... sink_args) { - return async_factory::create(logger_name, std::forward(sink_args)...); + return async_factory::create(std::move(logger_name), std::forward(sink_args)...); } template -inline std::shared_ptr create_async_nb(const std::string &logger_name, SinkArgs &&... sink_args) +inline std::shared_ptr create_async_nb(std::string logger_name, SinkArgs &&... sink_args) { - return async_factory_nonblock::create(logger_name, std::forward(sink_args)...); + return async_factory_nonblock::create(std::move(logger_name), std::forward(sink_args)...); } // set global thread pool. diff --git a/include/spdlog/details/async_logger_impl.h b/include/spdlog/details/async_logger_impl.h index e604d4ed..2841ab2b 100644 --- a/include/spdlog/details/async_logger_impl.h +++ b/include/spdlog/details/async_logger_impl.h @@ -18,20 +18,20 @@ template inline spdlog::async_logger::async_logger( std::string logger_name, It begin, It end, std::weak_ptr tp, async_overflow_policy overflow_policy) : logger(std::move(logger_name), begin, end) - , thread_pool_(tp) + , thread_pool_(std::move(tp)) , overflow_policy_(overflow_policy) { } inline spdlog::async_logger::async_logger( std::string logger_name, sinks_init_list sinks_list, std::weak_ptr tp, async_overflow_policy overflow_policy) - : async_logger(std::move(logger_name), sinks_list.begin(), sinks_list.end(), tp, overflow_policy) + : async_logger(std::move(logger_name), sinks_list.begin(), sinks_list.end(), std::move(tp), overflow_policy) { } inline spdlog::async_logger::async_logger( std::string logger_name, sink_ptr single_sink, std::weak_ptr tp, async_overflow_policy overflow_policy) - : async_logger(std::move(logger_name), {single_sink}, tp, overflow_policy) + : async_logger(std::move(logger_name), {std::move(single_sink)}, std::move(tp), overflow_policy) { }