Skip to content

Commit ac0569c

Browse files
committed
Ignore empty strings while converting from vcard's legacy address
1 parent eef87be commit ac0569c

File tree

1 file changed

+22
-4
lines changed

1 file changed

+22
-4
lines changed

src/xmpp/xmpp-im/xmpp_vcard4.h

+22-4
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,29 @@ class Address {
8080
public:
8181
Address() = default;
8282
Address(const QDomElement &element);
83-
Address(const XMPP::VCard::Address &legacyAddress) :
84-
pobox({ legacyAddress.pobox }), extaddr({ legacyAddress.extaddr }), street({ legacyAddress.street }),
85-
locality({ legacyAddress.locality }), region({ legacyAddress.region }), code({ legacyAddress.pcode }),
86-
country({ legacyAddress.country })
83+
Address(const XMPP::VCard::Address &legacyAddress)
8784
{
85+
if (!legacyAddress.pobox.isEmpty()) {
86+
pobox.append(legacyAddress.pobox);
87+
}
88+
if (!legacyAddress.extaddr.isEmpty()) {
89+
extaddr.append(legacyAddress.extaddr);
90+
}
91+
if (!legacyAddress.street.isEmpty()) {
92+
street.append(legacyAddress.street);
93+
}
94+
if (!legacyAddress.locality.isEmpty()) {
95+
locality.append(legacyAddress.locality);
96+
}
97+
if (!legacyAddress.region.isEmpty()) {
98+
region.append(legacyAddress.region);
99+
}
100+
if (!legacyAddress.pcode.isEmpty()) {
101+
code.append(legacyAddress.pcode);
102+
}
103+
if (!legacyAddress.country.isEmpty()) {
104+
country.append(legacyAddress.country);
105+
}
88106
}
89107
QDomElement toXmlElement(QDomDocument &document) const;
90108
bool isEmpty() const noexcept;

0 commit comments

Comments
 (0)