From d1978692b8cde1e5d785e31e4d443ae7a52f143f Mon Sep 17 00:00:00 2001 From: Linus Jahn Date: Sat, 11 Jul 2020 22:36:38 +0200 Subject: 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(). --- src/base/QXmppStreamManagement.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/base/QXmppStreamManagement.cpp') 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(); } -- cgit v1.2.3