From 6689e15e801f7302d28d4d11cae9bf2f38075da1 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Mon, 7 Jul 2008 20:41:43 +0000 Subject: Before emitting a message make sure the ID is also ready. Fixes bug #540360. svn path=/trunk/; revision=1203 --- libempathy/empathy-tp-chat.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'libempathy/empathy-tp-chat.c') 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; -- cgit v1.2.3