From 62da28714a2c058c629fd520f2a2735de643255a Mon Sep 17 00:00:00 2001 From: ronso0 Date: Tue, 10 Oct 2023 03:25:50 +0200 Subject: [PATCH] fixup! refactor: SearchQueryParser::getTextArgument --- src/library/searchqueryparser.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/library/searchqueryparser.cpp b/src/library/searchqueryparser.cpp index a7a9d373e3ab..4eb42b9d47c3 100644 --- a/src/library/searchqueryparser.cpp +++ b/src/library/searchqueryparser.cpp @@ -148,15 +148,20 @@ SearchQueryParser::TextArgumentResult SearchQueryParser::getTextArgument(QString } } StringMatch mode = StringMatch::Contains; + bool equalRequested = false; if (argument.startsWith("=")) { // strip the '=' from the argument argument = argument.mid(1); + // TODO(ronso0) should 'tag:"string"' really be equal to 'tag:="string"? mode = StringMatch::Equals; + equalRequested = true; } if (argument.startsWith("\"")) { Quoted quoted; std::tie(argument, quoted) = consumeQuotedArgument(argument, tokens); - mode = quoted == Quoted::Complete ? StringMatch::Equals : StringMatch::Contains; + mode = equalRequested && quoted == Quoted::Complete + ? StringMatch::Equals + : StringMatch::Contains; } return {argument, mode}; }