diff options
| author | Linus Jahn <lnj@kaidan.im> | 2020-07-11 22:36:38 +0200 |
|---|---|---|
| committer | LNJ <lnj@kaidan.im> | 2020-07-12 21:32:41 +0200 |
| commit | d1978692b8cde1e5d785e31e4d443ae7a52f143f (patch) | |
| tree | 2907a7900ecd3402ba8acfd4707ae69f71b49454 /src/base/QXmppStreamManagement.cpp | |
| parent | 317c87325b709fc6b5a1b363120a57299092a80f (diff) | |
| download | qxmpp-d1978692b8cde1e5d785e31e4d443ae7a52f143f.tar.gz | |
QXmppStanza::Error: Use std::optional<> internally
This makes the variables for the error type and condition an
std::optional<> as this makes the meaning clearer than hidden -1 values
created by dubious casts.
For now, the API is not changed, because we can't replace the getter
easily. We could do something like type() and optionalType().
Diffstat (limited to 'src/base/QXmppStreamManagement.cpp')
| -rw-r--r-- | src/base/QXmppStreamManagement.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/base/QXmppStreamManagement.cpp b/src/base/QXmppStreamManagement.cpp index 5f1e735b..45f0b94c 100644 --- a/src/base/QXmppStreamManagement.cpp +++ b/src/base/QXmppStreamManagement.cpp @@ -262,17 +262,18 @@ void QXmppStreamManagementFailed::parse(const QDomElement &element) { QDomElement childElement = element.firstChildElement(); if (!childElement.isNull() && childElement.namespaceURI() == ns_stanza) { - m_error = conditionFromStr(childElement.tagName()); + m_error = conditionFromString(childElement.tagName()).value_or(QXmppStanza::Error::Condition(-1)); } } void QXmppStreamManagementFailed::toXml(QXmlStreamWriter *writer) const { - QString errorString = strFromCondition(m_error); + QString errorString = conditionToString(m_error); writer->writeStartElement(QStringLiteral("failed")); writer->writeDefaultNamespace(ns_stream_management); - writer->writeStartElement(errorString, ns_stanza); + writer->writeStartElement(errorString); + writer->writeDefaultNamespace(ns_stanza); writer->writeEndElement(); writer->writeEndElement(); } |
