GNOME Bugzilla – Bug 617263
Crash of e-addressbook-factory on second start of evolution
Last modified: 2010-04-30 11:28:37 UTC
Moving this from a downstream bug report: https://bugzilla.redhat.com/show_bug.cgi?id=587449 abrt 1.0.9 detected a crash. architecture: x86_64 Attached file: backtrace cmdline: /usr/libexec/e-addressbook-factory component: evolution-data-server executable: /usr/libexec/e-addressbook-factory global_uuid: 0eaa9ec92e0975a0cb8869026776114a87c53774 kernel: 2.6.33.2-57.fc13.x86_64 package: evolution-data-server-2.30.1-1.fc13 rating: 4 reason: Process /usr/libexec/e-addressbook-factory was killed by signal 11 (SIGSEGV) release: Fedora release 13 (Goddard) How to reproduce ----- 1. Start evolution 2. Go to Contacts 3. Times out without getting any contact email addresses (neither local nor online data sources) Error message: (evolution:3736): libebook-WARNING **: e-book.c:2245: cannot get book from factory: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. (evolution:3736): evolution-mail-WARNING **: search_address_in_addressbooks: Unable to create addressbook 'Aoinagi': Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. warning: core file may not match specified executable file. [New Thread 3802] [New Thread 2029] [New Thread 3803] [New Thread 2204] Core was generated by `/usr/libexec/e-addressbook-factory'. Program terminated with signal 11, Segmentation fault.
+ Trace 221625
Thread 1 (Thread 3802)
------------------------------------------------------------------------- After some investigation: OK, I can reproduce the error (not the crash) on my machine when: a) run evolution in contacts b) select the google address book c) let it show google contacts d) close evolution e) run evolution again (within 10 seconds, as it's a timeout for autoclosing factory) f) it'll start in contacts and with the google address book selected The e-addressbook-factory console has new critical warnings there: (e-addressbook-factory:16641): libebookbackendgoogle-WARNING **: Connection to google already established. (e-addressbook-factory:16641): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `EDataBook' (e-addressbook-factory:16641): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)' (e-addressbook-factory:16641): GLib-GObject-CRITICAL **: g_signal_emit_valist: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed ------------------------------------------------------------------------- It seems it's related to google addresbook backend only, because I cannot reproduce it with any other I have configured (webdav, file, mapi).
Created attachment 159972 [details] [review] eds patch for evolution-data-server; The EDataBook was freed, but not removed from the list of clients for a backend. It was so for all the backends, even for the file backend, but that one wasn't notifying anything to clients, whereas the google backend was.
Created commit de195b7 in eds master (2.31.1+) Created commit 9e8f81d in eds gnome-2-30 (2.30.2+)