Bug#858924: gnome-calendar: Segfault in gcal_manager_create_event when adding event

Daniel Gnoutcheff daniel at gnoutcheff.name
Tue Mar 28 17:36:45 UTC 2017


Package: gnome-calendar
Version: 3.22.3-1
Severity: important

To reproduce:

1. Click on an empty day to add a new event
2. Click "Edit Details..."
3. Click "Done"

Result: gnome-calendar segfaults.  

gdb says:

> (gdb) r
> Starting program: /usr/bin/gnome-calendar 
<...>
> ** (gnome-calendar:23581): CRITICAL **: gcal_event_get_source: assertion 'GCAL_IS_EVENT (self)' failed
> 
> ** (gnome-calendar:23581): CRITICAL **: gcal_event_get_component: assertion 'GCAL_IS_EVENT (self)' failed
> 
> (gnome-calendar:23581): e-data-server-CRITICAL **: e_source_hash: assertion 'E_IS_SOURCE (source)' failed
> 
> (gnome-calendar:23581): libecal-CRITICAL **: e_cal_component_get_icalcomponent: assertion 'comp != NULL' failed
> 
> (gnome-calendar:23581): GLib-GObject-CRITICAL **: g_object_ref: assertion 'G_IS_OBJECT (object)' failed
> 
> Thread 1 "gnome-calendar" received signal SIGSEGV, Segmentation fault.
> 0x0000555555580184 in gcal_manager_create_event (
>     manager=0x5555557fcb60 [GcalManager], event=0x7fffa0002f40)
>     at gcal-manager.c:1486
> 1486  gcal-manager.c: No such file or directory.
> (gdb) bt
> #0  0x0000555555580184 in gcal_manager_create_event (manager=0x5555557fcb60 [GcalManager], event=0x7fffa0002f40) at gcal-manager.c:1486
> #4  0x00007ffff3e38fbf in <emit signal ??? on instance 0x555555c082a0 [GcalEditDialog]> (instance=<optimized out>, signal_id=<optimized out>, detail=detail at entry=0) at ././gobject/gsignal.c:3447
>     #1  0x00007ffff3e1df75 in g_closure_invoke (closure=0x555555ceb5a0, return_value=return_value at entry=0x0, n_param_values=2, param_values=param_values at entry=0x7fffffffc620, invocation_hint=invocation_hint at entry=0x7fffffffc5a0)
>     at ././gobject/gclosure.c:804
>     #2  0x00007ffff3e2ff82 in signal_emit_unlocked_R (node=node at entry=0x55555595fd20, detail=detail at entry=0, instance=instance at entry=0x555555c082a0, emission_return=emission_return at entry=0x0, instance_and_params=instance_and_params at entry=0x7fffffffc620) at ././gobject/gsignal.c:3635
>     #3  0x00007ffff3e38bdc in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args at entry=0x7fffffffc7e0) at ././gobject/gsignal.c:3391
> #5  0x00007ffff6430682 in gtk_dialog_response (dialog=<optimized out>, response_id=response_id at entry=6) at ././gtk/gtkdialog.c:1235
> #6  0x0000555555579f0e in gcal_edit_dialog_action_button_clicked (widget=<optimized out>, user_data=<optimized out>) at gcal-edit-dialog.c:691
> #7  0x00007ffff3e1e1a4 in _g_closure_invoke_va (closure=closure at entry=0x555555e7e740, return_value=return_value at entry=0x0, instance=instance at entry=0x555555cc7500, args=args at entry=0x7fffffffcb10, n_params=<optimized out>, param_types=0x0)
>     at ././gobject/gclosure.c:867
> #8  0x00007ffff3e388cd in g_signal_emit_valist (instance=0x555555cc7500, signal_id=<optimized out>, detail=0, var_args=var_args at entry=0x7fffffffcb10)
>     at ././gobject/gsignal.c:3300
> #9  0x00007ffff3e38fbf in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ././gobject/gsignal.c:3447
> #10 0x00007ffff63bed4d in gtk_button_do_release (button=0x555555cc7500 [GtkButton], emit_clicked=<optimized out>) at ././gtk/gtkbutton.c:1843
> #11 0x00007ffff63bedb5 in gtk_real_button_released (button=0x555555cc7500 [GtkButton]) at ././gtk/gtkbutton.c:1961
> #15 0x00007ffff3e38fbf in <emit signal ??? on instance 0x555555cc7500 [GtkButton]> (instance=instance at entry=0x555555cc7500, signal_id=<optimized out>, detail=detail at entry=0) at ././gobject/gsignal.c:3447
>     #12 0x00007ffff3e1df75 in g_closure_invoke (closure=closure at entry=0x5555558d2890, return_value=return_value at entry=0x0, n_param_values=1, param_values=param_values at entry=0x7fffffffce00, invocation_hint=invocation_hint at entry=0x7fffffffcd80) at ././gobject/gclosure.c:804
>     #13 0x00007ffff3e2f95c in signal_emit_unlocked_R (node=node at entry=0x5555558ee1f0, detail=detail at entry=0, instance=instance at entry=0x555555cc7500, emission_return=emission_return at entry=0x0, instance_and_params=instance_and_params at entry=0x7fffffffce00) at ././gobject/gsignal.c:3565
>     #14 0x00007ffff3e38bdc in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args at entry=0x7fffffffcfb0) at ././gobject/gsignal.c:3391
> #16 0x00007ffff63bd1b0 in multipress_released_cb (gesture=0x555555cd34d0 [GtkGestureMultiPress], n_press=<optimized out>, x=<optimized out>, y=<optimized out>, widget=0x555555cc7500 [GtkButton]) at ././gtk/gtkbutton.c:666
> #17 0x00007fffe8aee038 in ffi_call_unix64 () at ../src/x86/unix64.S:76
> #18 0x00007fffe8aeda9a in ffi_call (cif=cif at entry=0x7fffffffd310, fn=fn at entry=0x7ffff63bd190 <multipress_released_cb>, rvalue=<optimized out>, avalue=avalue at entry=0x7fffffffd1e0) at ../src/x86/ffi64.c:525
> #19 0x00007ffff3e1ec8a in g_cclosure_marshal_generic_va (closure=0x555555d016d0, return_value=0x0, instance=<optimized out>, args_list=<optimized out>, marshal_data=<optimized out>, n_params=3, param_types=0x5555559f0f70)
>     at ././gobject/gclosure.c:1604
> #20 0x00007ffff3e1e1a4 in _g_closure_invoke_va (closure=closure at entry=0x555555d016d0, return_value=return_value at entry=0x0, instance=instance at entry=0x555555cd34d0, args=args at entry=0x7fffffffd5a0, n_params=<optimized out>, param_types=0x5555559f0f70) at ././gobject/gclosure.c:867
> #21 0x00007ffff3e388cd in g_signal_emit_valist (instance=0x555555cd34d0, signal_id=<optimized out>, detail=0, var_args=var_args at entry=0x7fffffffd5a0)
>     at ././gobject/gsignal.c:3300
> #22 0x00007ffff3e38fbf in g_signal_emit (instance=instance at entry=0x555555cd34d0, signal_id=<optimized out>, detail=detail at entry=0)
>     at ././gobject/gsignal.c:3447
> #23 0x00007ffff6478b31 in gtk_gesture_multi_press_end (gesture=0x555555cd34d0 [GtkGestureMultiPress], sequence=<optimized out>)
>     at ././gtk/gtkgesturemultipress.c:282
> #24 0x00007ffff3e20d27 in g_cclosure_marshal_VOID__BOXEDv (closure=0x555555983180, return_value=<optimized out>, instance=0x555555cd34d0, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x5555559755a0) at ././gobject/gmarshal.c:1950
> #25 0x00007ffff3e1e1a4 in _g_closure_invoke_va (closure=closure at entry=0x555555983180, return_value=return_value at entry=0x0, instance=instance at entry=0x555555cd34d0, args=args at entry=0x7fffffffd930, n_params=<optimized out>, param_types=0x5555559755a0) at ././gobject/gclosure.c:867
> #26 0x00007ffff3e388cd in g_signal_emit_valist (instance=0x555555cd34d0, signal_id=<optimized out>, detail=0, var_args=var_args at entry=0x7fffffffd930)
>     at ././gobject/gsignal.c:3300
> #27 0x00007ffff3e38fbf in g_signal_emit (instance=instance at entry=0x555555cd34d0, signal_id=<optimized out>, detail=detail at entry=0)
>     at ././gobject/gsignal.c:3447
> #28 0x00007ffff6475dfe in _gtk_gesture_set_recognized (sequence=0x0, recognized=0, gesture=0x555555cd34d0 [GtkGestureMultiPress]) at ././gtk/gtkgesture.c:345
> #29 0x00007ffff6475dfe in _gtk_gesture_check_recognized (gesture=gesture at entry=0x555555cd34d0 [GtkGestureMultiPress], sequence=sequence at entry=0x0)
>     at ././gtk/gtkgesture.c:386
> #30 0x00007ffff647742b in gtk_gesture_handle_event (controller=0x555555cd34d0 [GtkGestureMultiPress], event=0x5555558235b0) at ././gtk/gtkgesture.c:777
> #31 0x00007ffff647a0ad in gtk_gesture_single_handle_event (controller=0x555555cd34d0 [GtkGestureMultiPress], event=0x5555558235b0)
>     at ././gtk/gtkgesturesingle.c:221
> #32 0x00007ffff644752e in gtk_event_controller_handle_event (controller=0x555555cd34d0 [GtkGestureMultiPress], event=event at entry=0x5555558235b0)
>     at ././gtk/gtkeventcontroller.c:230
> #33 0x00007ffff660c2db in _gtk_widget_run_controllers (widget=0x555555cc7500 [GtkButton], event=0x5555558235b0, phase=GTK_PHASE_BUBBLE)
>     at ././gtk/gtkwidget.c:7359
> #34 0x00007ffff64c1b71 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x55555587c9b0, return_value=0x7fffffffdce0, instance=0x555555cc7500, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x55555587c9e0)
>     at ././gtk/gtkmarshalers.c:131
> #35 0x00007ffff3e1e1a4 in _g_closure_invoke_va (closure=closure at entry=0x55555587c9b0, return_value=return_value at entry=0x7fffffffdce0, instance=instance at entry=0x555555cc7500, args=args at entry=0x7fffffffddb0, n_params=<optimized out>, param_types=0x55555587c9e0) at ././gobject/gclosure.c:867
> #36 0x00007ffff3e383a1 in g_signal_emit_valist (instance=0x555555cc7500, signal_id=<optimized out>, detail=0, var_args=var_args at entry=0x7fffffffddb0)
>     at ././gobject/gsignal.c:3300
> #37 0x00007ffff3e38fbf in g_signal_emit (instance=instance at entry=0x555555cc7500, signal_id=<optimized out>, detail=detail at entry=0)
>     at ././gobject/gsignal.c:3447
> #38 0x00007ffff660e57c in gtk_widget_event_internal (widget=0x555555cc7500 [GtkButton], event=0x5555558235b0) at ././gtk/gtkwidget.c:7724
> #39 0x00007ffff64beafe in propagate_event_up (topmost=<optimized out>, event=<optimized out>, widget=0x555555cc7500 [GtkButton]) at ././gtk/gtkmain.c:2578
> #40 0x00007ffff64beafe in propagate_event (widget=<optimized out>, event=0x5555558235b0, captured=<optimized out>, topmost=0x0) at ././gtk/gtkmain.c:2680
> #41 0x00007ffff64c0bbe in gtk_main_do_event (event=0x5555558235b0)
>     at ././gtk/gtkmain.c:1901
> #42 0x00007ffff5fd1e15 in _gdk_event_emit (event=event at entry=0x5555558235b0)
>     at ././gdk/gdkevents.c:73
> #43 0x00007ffff6002ea2 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>)
>     at ././gdk/x11/gdkeventsource.c:367
> #44 0x00007ffff3b447f7 in g_main_dispatch (context=0x555555803820)
>     at ././glib/gmain.c:3203
> #45 0x00007ffff3b447f7 in g_main_context_dispatch (context=context at entry=0x555555803820) at ././glib/gmain.c:3856
> #46 0x00007ffff3b44a60 in g_main_context_iterate (context=context at entry=0x555555803820, block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>)
>     at ././glib/gmain.c:3929
> #47 0x00007ffff3b44b0c in g_main_context_iteration (context=context at entry=0x555555803820, may_block=may_block at entry=1) at ././glib/gmain.c:3990
> #48 0x00007ffff410070d in g_application_run (application=0x5555558000e0 [GcalApplication], argc=1, argv=0x7fffffffe228) at ././gio/gapplication.c:2381
> #49 0x000055555556cd00 in main (argc=1, argv=0x7fffffffe228) at main.c:43
> (gdb) 






-- System Information:
Debian Release: 9.0
  APT prefers testing-debug
  APT policy: (500, 'testing-debug'), (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages gnome-calendar depends on:
ii  dconf-gsettings-backend [gsettings-backend]  0.26.0-2+b1
ii  gsettings-desktop-schemas                    3.22.0-1
ii  libatk1.0-0                                  2.22.0-1
ii  libc6                                        2.24-9
ii  libcairo-gobject2                            1.14.8-1
ii  libcairo2                                    1.14.8-1
ii  libecal-1.2-19                               3.22.6-1
ii  libedataserver-1.2-22                        3.22.6-1
ii  libedataserverui-1.2-1                       3.22.6-1
ii  libgdk-pixbuf2.0-0                           2.36.5-2
ii  libglib2.0-0                                 2.50.3-1
ii  libgoa-1.0-0b                                3.22.5-1
ii  libgtk-3-0                                   3.22.9-4
ii  libical2                                     2.0.0-0.5+b1
ii  libicu57                                     57.1-5
ii  libpango-1.0-0                               1.40.4-1
ii  libpangocairo-1.0-0                          1.40.4-1
ii  libsecret-1-0                                0.18.5-3.1
ii  libsoup2.4-1                                 2.56.0-2
ii  libxml2                                      2.9.4+dfsg1-2.2

Versions of packages gnome-calendar recommends:
ii  evolution-data-server  3.22.6-1

gnome-calendar suggests no packages.

-- no debconf information



More information about the pkg-gnome-maintainers mailing list