summaryrefslogtreecommitdiff
path: root/src/mongo/db/matcher/expression_parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/matcher/expression_parser.cpp')
-rw-r--r--src/mongo/db/matcher/expression_parser.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mongo/db/matcher/expression_parser.cpp b/src/mongo/db/matcher/expression_parser.cpp
index 3901971ae64..f945115c370 100644
--- a/src/mongo/db/matcher/expression_parser.cpp
+++ b/src/mongo/db/matcher/expression_parser.cpp
@@ -1416,14 +1416,15 @@ StatusWith<std::unique_ptr<ExpressionWithPlaceholder>> parseExprWithPlaceholder(
return result.getStatus();
}
- if (result.getValue()->getPlaceholder() != expectedPlaceholder) {
+ auto placeholder = result.getValue()->getPlaceholder();
+ if (placeholder && (*placeholder != expectedPlaceholder)) {
return {ErrorCodes::FailedToParse,
str::stream() << expressionName << " expected a name placeholder of "
<< expectedPlaceholder
<< ", but '"
<< exprWithPlaceholderElem.fieldName()
<< "' has a mismatching placeholder '"
- << result.getValue()->getPlaceholder()
+ << *placeholder
<< "'"};
}
return result;