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 660993 - Crash when creating facebook account
Crash when creating facebook account
Status: RESOLVED FIXED
Product: gnome-online-accounts
Classification: Core
Component: general
unspecified
Other Linux
: Normal critical
: ---
Assigned To: GNOME Online Accounts maintainer(s)
GNOME Online Accounts maintainer(s)
Depends on:
Blocks: 661067
 
 
Reported: 2011-10-05 15:04 UTC by Xavier Claessens
Modified: 2011-10-07 19:07 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Make sure there is an error set when returning FALSE (2.13 KB, patch)
2011-10-06 16:15 UTC, Xavier Claessens
accepted-commit_now Details | Review

Description Xavier Claessens 2011-10-05 15:04:44 UTC
I've created a client-id and client-secret for Facebook app and build gnome-online-account with them. Now creating a facebook account crash. Here is backtrace with fatal-warnings:


GoaBackend-CRITICAL **: goa_provider_store_credentials_sync: assertion `GOA_IS_OBJECT (object) && goa_object_peek_account (object) != NULL' failed

Program received signal SIGTRAP, Trace/breakpoint trap.
g_logv (log_domain=0x7fffd5bdd952 "GoaBackend", log_level=<optimized out>, format=0x7ffff5dbb712 "%s: assertion `%s' failed", args1=0x7fffffffc998) at /build/buildd/glib2.0-2.30.0/./glib/gmessages.c:577
577	/build/buildd/glib2.0-2.30.0/./glib/gmessages.c: Aucun fichier ou dossier de ce type.
	in /build/buildd/glib2.0-2.30.0/./glib/gmessages.c
(gdb) bt
  • #0 g_logv
    at /build/buildd/glib2.0-2.30.0/./glib/gmessages.c line 577
  • #1 g_log
    at /build/buildd/glib2.0-2.30.0/./glib/gmessages.c line 591
  • #2 goa_provider_store_credentials_sync
    at goaprovider.c line 723
  • #3 goa_oauth2_provider_add_account
    at goaoauth2provider.c line 964
  • #4 goa_provider_add_account
    at goaprovider.c line 215
  • #5 ??
    from /usr/lib/control-center-1/panels/libonline-accounts.so
  • #6 g_closure_invoke
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c line 774
  • #7 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3272
  • #8 g_signal_emit_valist
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3003
  • #9 g_signal_emit_by_name
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3097
  • #10 g_closure_invoke
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c line 774
  • #11 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3272
  • #12 g_signal_emit_valist
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3003
  • #13 g_signal_emit
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3060
  • #14 ??
    from /usr/lib/libgtk-3.so.0
  • #15 g_closure_invoke
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c line 774
  • #16 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3202
  • #17 g_signal_emit_valist
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3003
  • #18 g_signal_emit
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3060
  • #19 ??
    from /usr/lib/libgtk-3.so.0
  • #20 ??
    from /usr/lib/libgtk-3.so.0
  • #21 g_closure_invoke
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c line 774
  • #22 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3310
  • #23 g_signal_emit_valist
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3013
  • #24 g_signal_emit
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c line 3060
  • #25 ??
    from /usr/lib/libgtk-3.so.0
  • #26 gtk_propagate_event
    from /usr/lib/libgtk-3.so.0
  • #27 gtk_main_do_event
    from /usr/lib/libgtk-3.so.0
  • #28 ??
    from /usr/lib/libgdk-3.so.0
  • #29 g_main_dispatch
    at /build/buildd/glib2.0-2.30.0/./glib/gmain.c line 2441
  • #30 g_main_context_dispatch
    at /build/buildd/glib2.0-2.30.0/./glib/gmain.c line 3011
  • #31 g_main_context_iterate
    at /build/buildd/glib2.0-2.30.0/./glib/gmain.c line 3089
  • #32 g_main_loop_run
    at /build/buildd/glib2.0-2.30.0/./glib/gmain.c line 3297
  • #33 gtk_main
    from /usr/lib/libgtk-3.so.0
  • #34 g_application_run
    at /build/buildd/glib2.0-2.30.0/./gio/gapplication.c line 1323
  • #35 main

Comment 1 Xavier Claessens 2011-10-06 10:07:06 UTC
Hm, after a reboot this morning I've got lots of facebook accounts appearing (those that I couldn't see because g-c-c crashed each time I tried). And now I cannot reproduce this bug for facebook anymore.

But it's now happening with my messenger provider (bug #661067) which is just a copy/paste of the facebook one.
Comment 2 David Zeuthen (not reading bugmail) 2011-10-06 13:50:19 UTC
Sorry I haven't had time to look at this and I'm still a bit busy. I guess it's because the daemon and library gets out of sync - did you run the daemon from the source tree after making changes?
Comment 3 Xavier Claessens 2011-10-06 16:15:42 UTC
Created attachment 198446 [details] [review]
Make sure there is an error set when returning FALSE
Comment 4 Xavier Claessens 2011-10-06 16:16:44 UTC
That patch fix the assertion which happens if something goes wrong. At least now I get an error dialog showing the error message.
Comment 5 David Zeuthen (not reading bugmail) 2011-10-06 16:59:24 UTC
Comment on attachment 198446 [details] [review]
Make sure there is an error set when returning FALSE

Looks good - Thanks! Please commit.
Comment 6 Xavier Claessens 2011-10-07 19:07:28 UTC
ok, pushed.