if (tp_proxy_get_invalidated (channel) != NULL)
continue;
+ if (!TP_IS_TEXT_CHANNEL (channel))
+ continue;
+
tp_chat = empathy_tp_chat_new (account, channel);
roomname = empathy_tp_chat_get_id (tp_chat);
chatroom = empathy_chatroom_manager_find (self, account, roomname);
TpChannel *channel)
{
g_return_val_if_fail (TP_IS_ACCOUNT (account), NULL);
- g_return_val_if_fail (TP_IS_CHANNEL (channel), NULL);
+ g_return_val_if_fail (TP_IS_TEXT_CHANNEL (channel), NULL);
return g_object_new (EMPATHY_TYPE_TP_CHAT,
"account", account,
if (tp_proxy_get_invalidated (channel) != NULL)
continue;
+ if (!TP_IS_TEXT_CHANNEL (channel))
+ {
+ DEBUG ("Channel %s doesn't implement Messages; can't handle it",
+ tp_proxy_get_object_path (channel));
+ continue;
+ }
+
handling = TRUE;
tp_chat = empathy_tp_chat_new (account, channel);
channel_type = tp_channel_get_channel_type_id (channel);
- if (channel_type == TP_IFACE_QUARK_CHANNEL_TYPE_TEXT)
+ if (TP_IS_TEXT_CHANNEL (channel))
{
EmpathyTpChat *tp_chat;