[Telepathy-commits] [telepathy-qt4/master] Channel: Properly tries to create a Contact object for initiator even if group interface is not supported.
Andre Moreira Magalhaes (andrunko)
andre.magalhaes at collabora.co.uk
Mon Feb 9 12:20:48 PST 2009
---
TelepathyQt4/Client/channel.cpp | 16 ++++++++++------
1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/TelepathyQt4/Client/channel.cpp b/TelepathyQt4/Client/channel.cpp
index af688a3..6b0214d 100644
--- a/TelepathyQt4/Client/channel.cpp
+++ b/TelepathyQt4/Client/channel.cpp
@@ -420,6 +420,14 @@ void Channel::Private::extract0177MainProps(const QVariantMap &props)
requested = qdbus_cast<uint>(props["Requested"]);
initiatorHandle = qdbus_cast<uint>(props["InitiatorHandle"]);
+ if (!interfaces.contains(TELEPATHY_INTERFACE_CHANNEL_INTERFACE_GROUP) &&
+ initiatorHandle) {
+ // there is no group interface, so lets true build the contact
+ // object for initiatorHandle now
+ buildingInitialContacts = true;
+ buildContacts();
+ }
+
nowHaveInterfaces();
}
@@ -478,12 +486,8 @@ void Channel::Private::nowHaveInterfaces()
debug() << "Channel has" << interfaces.size() <<
"optional interfaces:" << interfaces;
- for (QStringList::const_iterator i = interfaces.begin();
- i != interfaces.end();
- ++i) {
- if (*i == TELEPATHY_INTERFACE_CHANNEL_INTERFACE_GROUP) {
- introspectQueue.enqueue(&Private::introspectGroup);
- }
+ if (interfaces.contains(TELEPATHY_INTERFACE_CHANNEL_INTERFACE_GROUP)) {
+ introspectQueue.enqueue(&Private::introspectGroup);
}
}
--
1.5.6.5
More information about the telepathy-commits
mailing list