After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 677633 - Cannot delete favourite
Cannot delete favourite
Status: RESOLVED FIXED
Product: folks
Classification: Platform
Component: Telepathy backend
0.8.x
Other Linux
: Normal normal
: Unset
Assigned To: folks-maint
folks-maint
Depends on:
Blocks:
 
 
Reported: 2012-06-07 13:06 UTC by Yajo
Modified: 2012-12-28 14:00 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Yajo 2012-06-07 13:06:16 UTC
I have a contact marked as favourite since long ago, but I don't want it to be there anymore.

I push right button -> Edit and uncheck Favourite. After closing the window, nothing happened. If i open it again, it remains checked.
Comment 1 Rolando Garza 2012-10-20 15:32:19 UTC
I think I'm having a similar problem, but don't know if it should be placed here... I'm trying to delete a contact from windows live: his account has been hijacked and he's now spamming.

However, every time I try to delete the contact, he just stays there. What can I do?
Comment 2 Peter Oliver 2012-10-21 17:32:20 UTC
I also see this, with empathy 3.2.2 on Fedora 16.  When I try to remove a particular favourite, I see the following on the terminal:

(empathy:10332): GLib-CRITICAL **: g_source_remove: assertion `tag > 0' failed

Note that I can add and remove other favourites without issue.
Comment 3 Guillaume Desmottes 2012-12-28 12:09:48 UTC
I can reproduce this issue.

- Edit a Telepathy contact (not a meta contact)
- Mark it as favorite and close the edit dialog
- re-open it: the checkbox is unchecked
- Restart empathy
- Now the contact is marked as favorite.

That seems to be a problem in Folks : tpf-logger.vala:

The callback of this signal is only fired once Logger._logger.favourite_contacts_changed.connect once it should be fired for each tpf store. So, as 'ap' is different from 'this._account_path' the signal is ignored.
Comment 4 Guillaume Desmottes 2012-12-28 12:10:23 UTC
(In reply to comment #2)
> I also see this, with empathy 3.2.2 on Fedora 16.  When I try to remove a
> particular favourite, I see the following on the terminal:
> 
> (empathy:10332): GLib-CRITICAL **: g_source_remove: assertion `tag > 0' failed
> 
> Note that I can add and remove other favourites without issue.

This sounds like a different issue. Can you please try with a more recent version and open another bug if needed?
Comment 5 Philip Withnall 2012-12-28 14:00:57 UTC
Thanks to Guillaume for debugging this one very thoroughly and suggesting the fix.

commit ce55fa2bf2f5f8cf95532da585d835bafeeb3347
Author: Philip Withnall <philip@tecnocode.co.uk>
Date:   Fri Dec 28 13:47:50 2012 +0000

    telepathy: Yield subsequent Logger.prepare() calls if one is pending
    
    If one PersonaStore began to prepare its Logger, then yielded on a D-Bus
    call, another PersonaStore could begin to prepare its Logger and also
    try to create a static D-Bus proxy (which is only supposed to be created
    once). This is because the original async call hasn’t returned and set
    Logger._logger by that point.
    
    Fix this by keeping a queue of pending prepare() calls which is signalled
    by the initial prepare() call once it finishes yielding.
    
    Closes: https://bugzilla.gnome.org/show_bug.cgi?id=677633

 NEWS                                   |  1 +
 backends/telepathy/lib/tpf-logger.vala | 47 +++++++++++++++++++++++++++++++++++++++++------
 2 files changed, 42 insertions(+), 6 deletions(-)