diff options
author | Xavier Claessens <xclaesse@src.gnome.org> | 2008-07-08 04:41:43 +0800 |
---|---|---|
committer | Xavier Claessens <xclaesse@src.gnome.org> | 2008-07-08 04:41:43 +0800 |
commit | 6689e15e801f7302d28d4d11cae9bf2f38075da1 (patch) | |
tree | e402a4221d565d9580b9bd0ef16aa1d179766ead | |
parent | 6b98af0d53275cf8003a9c6c55afd9bbe5d270d6 (diff) | |
download | gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.tar gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.tar.gz gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.tar.bz2 gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.tar.lz gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.tar.xz gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.tar.zst gsoc2013-empathy-6689e15e801f7302d28d4d11cae9bf2f38075da1.zip |
Before emitting a message make sure the ID is also ready. Fixes bug #540360.
svn path=/trunk/; revision=1203
-rw-r--r-- | libempathy/empathy-tp-chat.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libempathy/empathy-tp-chat.c b/libempathy/empathy-tp-chat.c index 7b09a8a5d..20c9d8f67 100644 --- a/libempathy/empathy-tp-chat.c +++ b/libempathy/empathy-tp-chat.c @@ -300,7 +300,8 @@ tp_chat_sender_ready_notify_cb (EmpathyContact *contact, sender = empathy_message_get_sender (message); ready = empathy_contact_get_ready (sender); - if (!(ready & EMPATHY_CONTACT_READY_NAME)) { + if ((ready & EMPATHY_CONTACT_READY_NAME) == 0 || + (ready & EMPATHY_CONTACT_READY_ID) == 0) { break; } @@ -342,7 +343,8 @@ tp_chat_emit_or_queue_message (EmpathyTpChat *chat, sender = empathy_message_get_sender (message); ready = empathy_contact_get_ready (sender); - if (ready & EMPATHY_CONTACT_READY_NAME) { + if ((ready & EMPATHY_CONTACT_READY_NAME) && + (ready & EMPATHY_CONTACT_READY_ID)) { DEBUG ("Message queue empty and sender ready"); g_signal_emit (chat, signals[MESSAGE_RECEIVED], 0, message); return; |