From 082f1a153bf5245081279e0d1d57048066c493e7 Mon Sep 17 00:00:00 2001 From: Billy Donahue Date: Sat, 17 Oct 2020 03:20:24 +0000 Subject: SERVER-51719 BSONElement::toString must handle len < 0 --- src/mongo/bson/bsonelement.cpp | 2 +- src/mongo/db/cst/c_node.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mongo/bson/bsonelement.cpp b/src/mongo/bson/bsonelement.cpp index 1191f82ecf2..312eb849caf 100644 --- a/src/mongo/bson/bsonelement.cpp +++ b/src/mongo/bson/bsonelement.cpp @@ -873,7 +873,7 @@ void BSONElement::toString( if (!full && len > 80) { s << hexblob::encode(data, 70) << "...)"; } else { - s << hexblob::encode(data, len) << ")"; + s << hexblob::encode(data, std::max(len, 0)) << ")"; } } break; diff --git a/src/mongo/db/cst/c_node.cpp b/src/mongo/db/cst/c_node.cpp index 0c6db03f835..17a89a532fd 100644 --- a/src/mongo/db/cst/c_node.cpp +++ b/src/mongo/db/cst/c_node.cpp @@ -120,7 +120,7 @@ auto printValue(const T& payload) { [](const UserString& userString) { return ""; }, [](const UserBinary& userBinary) { return ""; + hexblob::encode(userBinary.data, std::max(userBinary.length, 0)) + ">"; }, [](const UserUndefined& userUndefined) { return ""s; }, [](const UserObjectId& userObjectId) { -- cgit v1.2.1