diff --git a/include/spdlog/common-inl.h b/include/spdlog/common-inl.h index a21284d2..7138ef10 100644 --- a/include/spdlog/common-inl.h +++ b/include/spdlog/common-inl.h @@ -34,7 +34,8 @@ SPDLOG_INLINE spdlog::level::level_enum from_str(const std::string &name) SPDLOG } level++; } - return level::off; + // allow warn = warning before giving up + return name == "warn" ? level::warn: level::off; } } // namespace level diff --git a/tests/test_misc.cpp b/tests/test_misc.cpp index 576005a4..6ef19acc 100644 --- a/tests/test_misc.cpp +++ b/tests/test_misc.cpp @@ -72,6 +72,7 @@ TEST_CASE("to_level_enum", "[convert_to_level_enum]") REQUIRE(spdlog::level::from_str("debug") == spdlog::level::debug); REQUIRE(spdlog::level::from_str("info") == spdlog::level::info); REQUIRE(spdlog::level::from_str("warning") == spdlog::level::warn); + REQUIRE(spdlog::level::from_str("warn") == spdlog::level::warn); REQUIRE(spdlog::level::from_str("error") == spdlog::level::err); REQUIRE(spdlog::level::from_str("critical") == spdlog::level::critical); REQUIRE(spdlog::level::from_str("off") == spdlog::level::off);