diff --git a/src/networkplugin.cpp b/src/networkplugin.cpp index 11733cd1555a8f3fd8263245cc619db7f6a9ab1a..a3d9ed1633ad22365dc2fcf8e240b1d0164fca98 100644 --- a/src/networkplugin.cpp +++ b/src/networkplugin.cpp @@ -311,7 +311,12 @@ void NetworkPlugin::handleVCardPayload(const std::string &data) { return; } - handleVCardRequest(payload.username(), payload.buddyname(), payload.id()); + if (payload.has_photo()) { + handleVCardUpdatedRequest(payload.username(), payload.photo()); + } + else if (!payload.buddyname().empty()) { + handleVCardRequest(payload.username(), payload.buddyname(), payload.id()); + } } void NetworkPlugin::handleBuddyChangedPayload(const std::string &data) {