Summary: | Extract some non-Gabble-specific base classes for Call-related objects | ||
---|---|---|---|
Product: | Telepathy | Reporter: | Will Thompson <will> |
Component: | gabble | Assignee: | Telepathy bugs list <telepathy-bugs> |
Status: | RESOLVED FIXED | QA Contact: | Telepathy bugs list <telepathy-bugs> |
Severity: | normal | ||
Priority: | medium | Keywords: | patch |
Version: | git master | ||
Hardware: | Other | ||
OS: | All | ||
URL: | http://git.collabora.co.uk/?p=user/wjt/telepathy-gabble-wjt.git;a=shortlog;h=refs/heads/call-base-classes | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | 29778, 29790 | ||
Bug Blocks: |
Description
Will Thompson
2010-08-25 03:52:28 UTC
http://git.collabora.co.uk/?p=user/wjt/telepathy-gabble-wjt.git;a=commitdiff;h=f2a26e0b66ab5 Please cherry-pick this leak fix. (In reply to comment #1) > http://git.collabora.co.uk/?p=user/wjt/telepathy-gabble-wjt.git;a=commitdiff;h=f2a26e0b66ab5 > > Please cherry-pick this leak fix. http://git.collabora.co.uk/?p=telepathy-gabble.git;a=commitdiff;h=1a476dbd5d1ea177ff3f3a3a11ce9a82df70d400 I'll fix up the remaining bits of branch. I have now updated this branch to fix a leak I found while using chunks of GabbleBaseCallChannel in Ring. (Actually, it wasn't a leak in Gabble, kind of by accident; but I fixed Gabble to make the non-leakiness more explicit.) Really, we should have a GabbleBaseBaseCallChannel for the non-Jingle- and non-media-interface-specific bits of GabbleBaseCallChannel, but my life is too short for that right now. So I just ripped a bunch of code from that file and pasted it into Ring. BaseContent and BaseStream are used verbatim. Branch looks good. Had a go at doing the merge, but it's non-trivial thanks to dtmf lalaing. I posted to alsuren/call-base-classes-merged if anyone wants to take a look. On second thoughts, sjoerd suggests that I put everything into yell and port gabble to use that before I merge. That forces me to do more thorough review and make sure everything really is portable before I continue. It also avoids too much churn in gabble master. I feel like I'm going to end up holding quite a lot of state in my head about what's happening in all of the different Call implementations and spec branches by the time this gets merged, but hopefully it won't be too horrible. (In reply to comment #4) > Branch looks good. Had a go at doing the merge, but it's non-trivial thanks to > dtmf lalaing. I posted to alsuren/call-base-classes-merged if anyone wants to > take a look. G_DEFINE_TYPE_WITH_CODE(GabbleBaseCallChannel, gabble_base_call_channel, - G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (TP_TYPE_SVC_CHANNEL, channel_iface_init); + TP_TYPE_BASE_CHANNEL, G_IMPLEMENT_INTERFACE (GABBLE_TYPE_SVC_CHANNEL_TYPE_CALL, - call_iface_init) + call_iface_init); + G_IMPLEMENT_INTERFACE (TP_TYPE_SVC_DBUS_PROPERTIES, + tp_dbus_properties_mixin_iface_init); + G_IMPLEMENT_INTERFACE (TP_TYPE_EXPORTABLE_CHANNEL, NULL); + G_IMPLEMENT_INTERFACE (TP_TYPE_CHANNEL_IFACE, NULL); + G_IMPLEMENT_INTERFACE (TP_TYPE_SVC_CHANNEL_INTERFACE_DTMF, + dtmf_iface_init); - ); This looks suspicious. It looks like the merge has restored a whole bunch of interfaces that BaseChannel does for us. Otherwise the merge looks fine (even if you do want to defer it :)). this got merged by sjoerd. |
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.