GNOME Bugzilla – Bug 677457
Should ignore invalidated channels
Last modified: 2012-06-18 07:57:09 UTC
During some tests I ended up with the same contact appearing twice in the bottom box. That's because of a race when observing invalidated channels.
Created attachment 215630 [details] [review] telepathyClient: decline dispatch op when approving unsupported channel type It shouldn't happen in theory but best to be safe than sorry.
Created attachment 215631 [details] [review] 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.
Review of attachment 215631 [details] [review]: Minor whitespace issuse. Otherwise looks fine. Note that GErrors will be handled in gjs as a return value quite soon. Also note that returning GError*'s isn't really a standard API at all and maybe you should reconsider. ::: js/ui/telepathyClient.js @@ +133,3 @@ let [targetHandle, targetHandleType] = channel.get_handle(); + if (Shell.is_channel_invalidated (channel)) Whitespace issues.
Attachment 215630 [details] pushed as e112fa9 - telepathyClient: decline dispatch op when approving unsupported channel type Attachment 215631 [details] pushed as ededba0 - telepathyClient: ignore invalidated channels
Review of attachment 215630 [details] [review]: Sure, why not.