Bug 67139

Summary: Unref current Sugar activity while unrefing all activities previously announced by a contact
Product: Telepathy Reporter: Aleksey Lim <alsroot>
Component: gabbleAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED MOVED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: normal    
Priority: medium    
Version: 0.13   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Aleksey Lim 2013-07-21 14:14:51 UTC
telepathy-gabble-0.13.6 (at least), doesn't unref current Sugar activity while unrefing all activities previously announced by a contact in extract_activities() function. The issue can be reproduced the by the following top-level Sugar usecase:

(1) client A shares new Sugar activity;
(2) client B joins it;
(3) client A reflects on appearing B and sets B's current activity to the newly shared one;
(4) client A leaves the channel;
(5) client B leaves the channel;
(6) on client A side, the refcount incremented by (3) is not reverted.

The affected code:

> --- a/src/conn-olpc.c
> +++ b/src/conn-olpc.c
> @@ -730,6 +730,7 @@ extract_activities (GabbleConnection *conn,
> 
>    if (old_activities != NULL)
>      {
> +      g_hash_table_remove (conn->olpc_current_act, GUINT_TO_POINTER (sender));
>        /* We decrement the refcount (and free if needed) all the
>         * activities previously announced by this contact. */
>        tp_handle_set_foreach (old_activities,
Comment 1 GitLab Migration User 2019-12-03 19:58:58 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/telepathy/telepathy-gabble/issues/259.

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.