telepathyClient: ignore invalidated channels
There is a race if a channel is invalidated during its preparation: the 'invalidated' signal is already emitted so the Shell will never notice. We fix this by simply checking if the channel is already invalidated when receiving it from telepathy-glib. In the approving case, we reject the full ChannelDispatchOperation as we only support approving one channel at the time. https://bugzilla.gnome.org/show_bug.cgi?id=677457
This commit is contained in:
@@ -341,3 +341,9 @@ shell_decline_dispatch_op (TpAddDispatchOperationContext *context,
|
||||
tp_add_dispatch_operation_context_fail (context, error);
|
||||
g_error_free (error);
|
||||
}
|
||||
|
||||
/* gjs doesn't cope with tp_proxy_get_invalidated() returning a GError */
|
||||
gboolean shell_is_channel_invalidated (TpChannel *channel)
|
||||
{
|
||||
return tp_proxy_get_invalidated (channel) != NULL;
|
||||
}
|
||||
|
Reference in New Issue
Block a user