Summary: | [fixed 5.2, pending 5.3] Observers not invoked for channels requested "behind MC's back" | ||
---|---|---|---|
Product: | Telepathy | Reporter: | Simon McVittie <smcv> |
Component: | mission-control | Assignee: | Simon McVittie <smcv> |
Status: | RESOLVED FIXED | QA Contact: | Telepathy bugs list <telepathy-bugs> |
Severity: | major | ||
Priority: | high | CC: | mardy |
Version: | unspecified | Keywords: | patch |
Hardware: | Other | ||
OS: | All | ||
URL: | http://git.collabora.co.uk/?p=user/smcv/telepathy-mission-control-smcv.git;a=shortlog;h=refs/heads/52-always-observe-new-channels | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | 24120 | ||
Bug Blocks: |
Description
Simon McVittie
2009-10-12 06:31:30 UTC
52-always-observe-new-channels (referenced as the URL for this bug) fixes this bug for 5.2. always-observe-new-channels is a reimplementation for master; I do not recommend merging this one. always-observe-after-refactor is a reimplementation on top of dispatcher-refactor-part4. Fixed in 5.2. I recommend fixing this in 5.3 by merging dispatcher-refactor-part4 first: accordingly, blocking by Bug #24120. + /* channels that we will only observe should not need approval - so at + * least one must be false */ + g_return_val_if_fail (!(observe_only && needs_approval), NULL); Are you trying to say observe_only => !needs_approval, because the assertion is a non-obvious way of writing that and the comment doesn't make it very clear either Assuming this still ignores channels on connections that were established behind mc5's back, the branch looks fine. (apart from probably an improved comment) Is this better? /* possible-handlers is only allowed to be NULL if we're only observing */ g_return_val_if_fail (possible_handlers != NULL || observe_only, NULL); - /* channels that we will only observe should not need approval - so at - * least one must be false */ - g_return_val_if_fail (!(observe_only && needs_approval), NULL); + + /* If we're only observing, then the channels were requested "behind MC's + * back", so they can't need approval (i.e. observe_only implies + * !needs_approval) */ + g_return_val_if_fail (!observe_only || !needs_approval, NULL); Reviewed by Sjoerd on IRC and fixed in git. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.