aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppMixIq.cpp
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2022-03-16 18:54:00 +0100
committerLinus Jahn <lnj@kaidan.im>2022-03-16 18:54:00 +0100
commit42b617384318f0a659f16433e444b70e68ff7b25 (patch)
tree8f96e96cb446594058db723bdd09afa3b220c54c /src/base/QXmppMixIq.cpp
parentc77dcbb5a1ea3971cb5892666e160019ead34061 (diff)
downloadqxmpp-42b617384318f0a659f16433e444b70e68ff7b25.tar.gz
MixIq: Fix UB when parsing invalid action type
Diffstat (limited to 'src/base/QXmppMixIq.cpp')
-rw-r--r--src/base/QXmppMixIq.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/base/QXmppMixIq.cpp b/src/base/QXmppMixIq.cpp
index e61616a7..0908e733 100644
--- a/src/base/QXmppMixIq.cpp
+++ b/src/base/QXmppMixIq.cpp
@@ -150,7 +150,9 @@ void QXmppMixIq::parseElementFromChild(const QDomElement& element)
{
QDomElement child = element.firstChildElement();
// determine action type
- d->actionType = (QXmppMixIq::Type)MIX_ACTION_TYPES.indexOf(child.tagName());
+ if (auto index = MIX_ACTION_TYPES.indexOf(child.tagName()); index >= 0) {
+ d->actionType = Type(index);
+ }
if (child.namespaceURI() == ns_mix_pam) {
if (child.hasAttribute(QStringLiteral("channel")))