diff --git a/src/core/thread/mle.cpp b/src/core/thread/mle.cpp index cf1967585..a96516e8e 100644 --- a/src/core/thread/mle.cpp +++ b/src/core/thread/mle.cpp @@ -4499,7 +4499,7 @@ const char *Mle::RoleToString(DeviceRole aRole) static_assert(kRoleRouter == 3, "kRoleRouter value is incorrect"); static_assert(kRoleLeader == 4, "kRoleLeader value is incorrect"); - return (aRole <= OT_ARRAY_LENGTH(kRoleStrings)) ? kRoleStrings[aRole] : "invalid"; + return (aRole < OT_ARRAY_LENGTH(kRoleStrings)) ? kRoleStrings[aRole] : "invalid"; } // LCOV_EXCL_START