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 687642 - [abrt] Crash under caldav_synch_slave_loop()
[abrt] Crash under caldav_synch_slave_loop()
Status: RESOLVED FIXED
Product: evolution-data-server
Classification: Platform
Component: Calendar
3.6.x (obsolete)
Other Linux
: Normal critical
: ---
Assigned To: evolution-calendar-maintainers
Evolution QA team
evolution[caldav]
Depends on:
Blocks:
 
 
Reported: 2012-11-05 13:48 UTC by Milan Crha
Modified: 2012-11-07 12:10 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
eds patch (843 bytes, patch)
2012-11-07 12:06 UTC, Milan Crha
committed Details | Review

Description Milan Crha 2012-11-05 13:48:59 UTC
Moving this from a downstream bug report:
https://bugzilla.redhat.com/show_bug.cgi?id=872657

Description of problem:
In "Online Accounts", completing Google setup. Had deauthorized all but Mail and Documents. 

Version-Release number of selected component:
evolution-data-server-3.6.1-1.fc18

Additional info:
libreport version: 2.0.18
abrt_version:   2.0.18
backtrace_rating: 4
cmdline:        /usr/libexec/evolution-calendar-factory
crash_function: g_thread_abort
kernel:         3.6.5-2.fc18.x86_64

Core was generated by `/usr/libexec/evolution-calendar-factory'.
Program terminated with signal 6, Aborted.

Thread 3 (Thread 0x7f62f0129800 (LWP 3292))

  • #0 poll
    at ../sysdeps/unix/syscall-template.S line 81
  • #1 g_main_context_poll
    at gmain.c line 3584
  • #2 g_main_context_iterate
    at gmain.c line 3285
  • #3 g_main_loop_run
    at gmain.c line 3484
  • #4 dbus_server_run_server
    at e-dbus-server.c line 222
  • #5 ffi_call_unix64
    at ../src/x86/unix64.S line 75
  • #6 ffi_call
    at ../src/x86/ffi64.c line 486
  • #7 g_cclosure_marshal_generic_va
    at gclosure.c line 1550
  • #8 _g_closure_invoke_va
    at gclosure.c line 840
  • #9 g_signal_emit_valist
    at gsignal.c line 3211
  • #10 g_signal_emit
    at gsignal.c line 3356
  • #11 e_dbus_server_run
    at e-dbus-server.c line 396
  • #12 main
    at evolution-calendar-factory.c line 137

Comment 1 Milan Crha 2012-11-07 12:06:40 UTC
Created attachment 228355 [details] [review]
eds patch

for evolution-data-server;

It seems to me that the e_cal_backend_caldav_dispose() finished before the caldav_synch_slave_loop(). The dispose was waiting for a condition, and it seems like it got triggered before it should. After reading documentation for g_cond_wait(), it is possible that GCond can be triggered before the condition is met, thus I did this change for CalDAV backend.
Comment 2 Milan Crha 2012-11-07 12:10:07 UTC
Created commit f423c3f in eds master (3.7.2+)
Created commit a72fce9 in eds gnome-3-6 (3.6.2+)