aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppMessage.cpp
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2022-03-16 19:28:25 +0100
committerLinus Jahn <lnj@kaidan.im>2022-03-16 19:30:25 +0100
commit2264fb92e00e60031fa9d472ef7df305a7761aa6 (patch)
treeebc3f4f592c9650619eebe3f72c1b114d81b23cb /src/base/QXmppMessage.cpp
parent42b617384318f0a659f16433e444b70e68ff7b25 (diff)
Message: Processing Hints: Fix UB when parsing unknown hint
Diffstat (limited to 'src/base/QXmppMessage.cpp')
-rw-r--r--src/base/QXmppMessage.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/base/QXmppMessage.cpp b/src/base/QXmppMessage.cpp
index 9ec64d7f..45bc60be 100644
--- a/src/base/QXmppMessage.cpp
+++ b/src/base/QXmppMessage.cpp
@@ -1449,7 +1449,9 @@ void QXmppMessage::parseExtension(const QDomElement &element, QXmppElementList &
} else if (element.namespaceURI() == ns_message_processing_hints &&
HINT_TYPES.contains(element.tagName())) {
// XEP-0334: Message Processing Hints
- addHint(Hint(1 << HINT_TYPES.indexOf(element.tagName())));
+ if (const auto index = HINT_TYPES.indexOf(element.tagName()); index >= 0) {
+ addHint(Hint(1 << index));
+ }
} else if (checkElement(element, QStringLiteral("stanza-id"), ns_sid)) {
// XEP-0359: Unique and Stable Stanza IDs
d->stanzaId = element.attribute(QStringLiteral("id"));