aboutsummaryrefslogtreecommitdiffstats
path: root/src/empathy-chat-manager.c
diff options
context:
space:
mode:
authorDanielle Madeley <danielle.madeley@collabora.co.uk>2011-03-07 12:06:29 +0800
committerDanielle Madeley <danielle.madeley@collabora.co.uk>2011-04-06 13:48:32 +0800
commit0b213f4fae18f24fd7b162ca19c63249cd360e43 (patch)
tree426a0650907e74f3ecc20446e2879e4f3999b182 /src/empathy-chat-manager.c
parent73d8a18c6def748d78e91f0dda1145771c620b53 (diff)
downloadgsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.tar
gsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.tar.gz
gsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.tar.bz2
gsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.tar.lz
gsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.tar.xz
gsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.tar.zst
gsoc2013-empathy-0b213f4fae18f24fd7b162ca19c63249cd360e43.zip
[ChatroomManager] find windows by channel path, not by TargetID
Otherwise two separate channels with the same TargetID (i.e. SMSChannel = False and SMSChannel = True) will not result in two separate chat windows in Empathy. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=644085
Diffstat (limited to 'src/empathy-chat-manager.c')
-rw-r--r--src/empathy-chat-manager.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/empathy-chat-manager.c b/src/empathy-chat-manager.c
index cfa38ec84..4ff6b7d30 100644
--- a/src/empathy-chat-manager.c
+++ b/src/empathy-chat-manager.c
@@ -119,18 +119,16 @@ process_tp_chat (EmpathyTpChat *tp_chat,
gint64 user_action_time)
{
EmpathyChat *chat = NULL;
- const gchar *id;
+ const char *channel_path;
tell_chatroom_manager_if_needed (account, tp_chat);
- id = empathy_tp_chat_get_id (tp_chat);
- if (!tp_str_empty (id))
- {
- chat = empathy_chat_window_find_chat (account, id);
- }
+ channel_path = empathy_tp_chat_get_channel_path (tp_chat);
+ chat = empathy_chat_window_find_chat_by_channel (channel_path);
if (chat != NULL)
{
+ DEBUG ("found chat %p for path %s", chat, channel_path);
empathy_chat_set_tp_chat (chat, tp_chat);
}
else