diff --git a/src/base/QXmppUri.cpp b/src/base/QXmppUri.cpp index a10096ff2..6b0cd08a2 100644 --- a/src/base/QXmppUri.cpp +++ b/src/base/QXmppUri.cpp @@ -293,7 +293,7 @@ Join parseJoinQuery(const QUrlQuery &q) Login parseLoginQuery(const QUrlQuery &q) { return { - queryItemValue(q, u"login"_s), + queryItemValue(q, u"password"_s), }; } diff --git a/tests/qxmppuri/tst_qxmppuri.cpp b/tests/qxmppuri/tst_qxmppuri.cpp index 4bdde8214..d3417f9da 100644 --- a/tests/qxmppuri/tst_qxmppuri.cpp +++ b/tests/qxmppuri/tst_qxmppuri.cpp @@ -81,6 +81,11 @@ void tst_QXmppUri::queryOther() QCOMPARE(unwrap(uri.query()), (Uri::Join { u"1234"_s })); QCOMPARE(uri.toString(), string); + string = u"xmpp:alice@example.org?login;password=1234"_s; + uri = unwrap(QXmppUri::fromString(string)); + QCOMPARE(unwrap(uri.query()), (Uri::Login { u"1234"_s })); + QCOMPARE(uri.toString(), string); + string = u"xmpp:qxmpp.org?register"_s; uri = unwrap(QXmppUri::fromString(string)); QCOMPARE(unwrap(uri.query()), (Uri::Register {}));