diff --git a/include/spdlog/details/pattern_formatter-inl.h b/include/spdlog/details/pattern_formatter-inl.h index 41614d0f..1f39bbb6 100644 --- a/include/spdlog/details/pattern_formatter-inl.h +++ b/include/spdlog/details/pattern_formatter-inl.h @@ -878,7 +878,7 @@ public: void format(const details::log_msg &msg, const std::tm &, memory_buf_t &dest) override { - auto delta = msg.time - last_message_time_; + auto delta = std::max(msg.time - last_message_time_, log_clock::duration::zero()); auto delta_units = std::chrono::duration_cast(delta); last_message_time_ = msg.time; ScopedPadder p(6, padinfo_, dest);