[Telepathy-commits] [telepathy-qt4/master] Channel: Make sure change signals aren't emitted if channel is not ready.
Andre Moreira Magalhaes (andrunko)
andre.magalhaes at collabora.co.uk
Tue Feb 10 19:20:54 PST 2009
---
TelepathyQt4/Client/channel.cpp | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/TelepathyQt4/Client/channel.cpp b/TelepathyQt4/Client/channel.cpp
index 4422fb1..1a3306a 100644
--- a/TelepathyQt4/Client/channel.cpp
+++ b/TelepathyQt4/Client/channel.cpp
@@ -2060,7 +2060,9 @@ void Channel::onGroupFlagsChanged(uint added, uint removed)
uint groupFlags = mPriv->groupFlags;
groupFlags |= added;
groupFlags &= ~removed;
- if (mPriv->setGroupFlags(groupFlags)) {
+ // just emit groupFlagsChanged and related signals if the flags really
+ // changed and we are ready
+ if (mPriv->setGroupFlags(groupFlags) && isReady()) {
debug() << "Emitting groupFlagsChanged with" << mPriv->groupFlags <<
"value" << added << "added" << removed << "removed";
emit groupFlagsChanged(mPriv->groupFlags, added, removed);
@@ -2196,7 +2198,9 @@ void Channel::onHandleOwnersChanged(const Telepathy::HandleOwnerMap &added,
}
}
- if (emitAdded.size() || emitRemoved.size()) {
+ // just emit groupHandleOwnersChanged if it really changed and
+ // we are ready
+ if ((emitAdded.size() || emitRemoved.size()) && isReady()) {
debug() << "Emitting groupHandleOwnersChanged with" << emitAdded.size() <<
"added" << emitRemoved.size() << "removed";
emit groupHandleOwnersChanged(mPriv->groupHandleOwners,
--
1.5.6.5
More information about the telepathy-commits
mailing list