Bug 167157

Summary: Paste on Calendar causes Evolution freeze
Product: [Fedora] Fedora Reporter: Akira TAGOH <tagoh>
Component: evolution-data-serverAssignee: Matthew Barnes <mbarnes>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: bulk, majain
Target Milestone: ---Keywords: Desktop
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: evolution-data-server-1.7.4-5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-08-03 20:08:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 131549, 150221    
Attachments:
Description Flags
error listing
none
backtrace listing none

Description Akira TAGOH 2005-08-31 07:08:48 UTC
Description of problem:
I saw the backtrace logs at the terminal when I was going to test Bug#131547 and
Bug#131549.

Version-Release number of selected component (if applicable):
evolution-2.3.8-3

How reproducible:
always

Steps to Reproduce:
1.Create a new appointment
2.Change a view to Week and highlight the appointment
3.press Ctrl+c and Ctrl+v
  
Actual results:
Evolution freezes, and the backtrace logs on the terminal when you run Evolution
from the terminal.

Expected results:
Evolution shouldn't freezes

Additional info:
Here is what I saw at the terminal.

*** glibc detected *** evolution: double free or corruption (fasttop):
0x0a08a7f8 ***
======= Backtrace: =========
/lib/libc.so.6[0x2f7904]
/lib/libc.so.6(__libc_free+0x77)[0x2f7e3f]
/usr/lib/libecal-1.2.so.3(icalvalue_free+0xa3)[0x6c7acb]
/usr/lib/libecal-1.2.so.3(icalproperty_free+0x4e)[0x6bde2f]
/usr/lib/libecal-1.2.so.3(icalcomponent_free+0x4f)[0x6b77b6]
/usr/lib/libecal-1.2.so.3[0x6963a5]
/usr/lib/libecal-1.2.so.3[0x696443]
/usr/lib/libgobject-2.0.so.0(g_object_unref+0x165)[0x7fd195]
/usr/lib/evolution/2.4/components/libevolution-calendar.so(e_calendar_view_add_event+0x447)[0xf4cc13]
/usr/lib/evolution/2.4/components/libevolution-calendar.so[0xf4e1c3]
/usr/lib/libgtk-x11-2.0.so.0[0xa874b9]
/usr/lib/libgtk-x11-2.0.so.0[0xa86f31]
/usr/lib/libgtk-x11-2.0.so.0[0xb35882]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x11e)[0x7fab98]
/usr/lib/libgobject-2.0.so.0[0x8091e3]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x6ab)[0x80a820]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_by_name+0xf0)[0x80d3c6]
/usr/lib/libgtk-x11-2.0.so.0[0xb7517e]
/usr/lib/libgtk-x11-2.0.so.0(gtk_selection_convert+0x177)[0xb763a3]
/usr/lib/libgtk-x11-2.0.so.0(gtk_clipboard_request_contents+0x99)[0xa86ffa]
/usr/lib/libgtk-x11-2.0.so.0(gtk_clipboard_request_text+0x6b)[0xa875e2]
/usr/lib/evolution/2.4/components/libevolution-calendar.so(e_calendar_view_paste_clipboard+0x73)[0xf4e287]
/usr/lib/evolution/2.4/components/libevolution-calendar.so(gnome_calendar_paste_clipboard+0x55)[0xf96eb6]
/usr/lib/evolution/2.4/components/libevolution-calendar.so[0xf3b3bd]
/usr/lib/libbonoboui-2.so.0[0x32c90d5]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x11e)[0x7fab98]
/usr/lib/libbonobo-2.so.0(bonobo_closure_invoke_va_list+0x1b0)[0x316d696]
/usr/lib/libbonobo-2.so.0(bonobo_closure_invoke+0x195)[0x316d984]
/usr/lib/libbonoboui-2.so.0[0x32cb5ac]
/usr/lib/libbonobo-2.so.0(_ORBIT_skel_small_Bonobo_UIComponent_execVerb+0x21)[0x316e6b7]
/usr/lib/libORBit-2.so.0(ORBit_c_stub_invoke+0x16e)[0x30bd8bd]
/usr/lib/libbonobo-2.so.0(Bonobo_UIComponent_execVerb+0x74)[0x3172316]
/usr/lib/libbonoboui-2.so.0[0x32cf9f8]
/usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__POINTER+0x53)[0x806bce]
/usr/lib/libgobject-2.0.so.0[0x7fa565]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x11e)[0x7fab98]
/usr/lib/libgobject-2.0.so.0[0x80936f]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x6ab)[0x80a820]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29)[0x80ab93]
/usr/lib/libbonoboui-2.so.0(bonobo_ui_engine_emit_verb_on_w+0x52)[0x32cf21d]
/usr/lib/libbonoboui-2.so.0[0x32d56a6]
/usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__VOID+0x43)[0x8062d3]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x11e)[0x7fab98]
/usr/lib/libgobject-2.0.so.0[0x8091e3]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x6ab)[0x80a820]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29)[0x80ab93]
/usr/lib/libgtk-x11-2.0.so.0[0xc14fc8]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x11e)[0x7fab98]
/usr/lib/libgobject-2.0.so.0[0x8091e3]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x41e)[0x80a593]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29)[0x80ab93]
/usr/lib/libgtk-x11-2.0.so.0(gtk_accel_group_activate+0xcd)[0xa629fb]
/usr/lib/libgtk-x11-2.0.so.0(gtk_accel_groups_activate+0xe3)[0xa63397]
/usr/lib/libgtk-x11-2.0.so.0(gtk_window_activate_key+0xff)[0xc295b5]
/usr/lib/libgtk-x11-2.0.so.0[0xc2961d]
/usr/lib/libbonoboui-2.so.0[0x32e4e62]
/usr/lib/libgtk-x11-2.0.so.0[0xb3430c]
/usr/lib/libgobject-2.0.so.0[0x7fa565]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x11e)[0x7fab98]
/usr/lib/libgobject-2.0.so.0[0x80936f]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x41e)[0x80a593]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29)[0x80ab93]
/usr/lib/libgtk-x11-2.0.so.0[0xc15aff]
======= Memory map: ========
00101000-001fb000 r-xp 00000000 03:05 11862028   /lib/libcrypto.so.0.9.7f
001fb000-0020d000 rwxp 000fa000 03:05 11862028   /lib/libcrypto.so.0.9.7f
0020d000-00210000 rwxp 0020d000 00:00 0
00210000-00211000 r-xp 00000000 03:05 7213360   
/usr/X11R6/lib/X11/locale/lib/common/xlcUTF8Load.so.2
00211000-00212000 rwxp 00000000 03:05 7213360   
/usr/X11R6/lib/X11/locale/lib/common/xlcUTF8Load.so.2
00212000-00229000 r-xp 00000000 03:05 6277958    /usr/lib/libgssapi_krb5.so.2.2
00229000-0022b000 rwxp 00016000 03:05 6277958    /usr/lib/libgssapi_krb5.so.2.2
0022b000-0022c000 r-xp 00000000 03:05 6367527    /usr/lib/gconv/ISO8859-1.so
0022c000-0022e000 rwxp 00000000 03:05 6367527    /usr/lib/gconv/ISO8859-1.so
0022e000-00242000 r-xp 00000000 03:05 6554020   
/usr/lib/gtk-2.0/2.4.0/engines/libclearlooks.so
00242000-00243000 rwxp 00013000 03:05 6554020   
/usr/lib/gtk-2.0/2.4.0/engines/libclearlooks.so
00243000-00246000 r-xp 00000000 03:05 6365627    /usr/lib/gconv/EUC-JP.so
00246000-00248000 rwxp 00002000 03:05 6365627    /usr/lib/gconv/EUC-JP.so
00248000-00260000 r-xp 00000000 03:05 6367582    /usr/lib/gconv/libJIS.so
00260000-00262000 rwxp 00017000 03:05 6367582    /usr/lib/gconv/libJIS.so
00262000-00267000 r-xp 00000000 03:05 6914478   
/usr/lib/evolution/2.4/plugins/liborg-gnome-gw-account-setup.so
00267000-00268000 rwxp 00004000 03:05 6914478   
/usr/lib/evolution/2.4/plugins/liborg-gnome-gw-account-setup.so
00268000-0026b000 r-xp 00000000 03:05 6914443   
/usr/lib/evolution/2.4/libeabutil.so.0.0.0
0026b000-0026c000 rwxp 00002000 03:05 6914443   
/usr/lib/evolution/2.4/libeabutil.so.0.0.0
0026c000-00271000 r-xp 00000000 03:05 6914459   
/usr/lib/evolution/2.4/libevolution-calendar-importers.so.0.0.0
00271000-00272000 rwxp 00004000 03:05 6914459   
/usr/lib/evolution/2.4/libevolution-calendar-importers.so.0.0.0
00272000-00276000 r-xp 00000000 03:05 6914329    /usr/lib/evolution

Comment 1 Dave Malcolm 2005-08-31 16:34:58 UTC
I see this too, with the "Work Week" view

Comment 2 Derek 2005-11-14 16:53:45 UTC
Created attachment 121025 [details]
error listing

Comment 3 Derek 2005-11-14 16:55:29 UTC
I see this problem too. The error listing is attached above.
I am using Evolution version 2.2.3.

After I killed and restarted evolution, I find that the paste action had
actually succeeded.

Comment 4 Christopher Aillon 2006-01-27 20:29:01 UTC
Still an issue in rawhide?

Comment 5 Akira TAGOH 2006-01-30 05:40:53 UTC
Yes, still happens with evolution 2.5.5.1-2 and evolution-data-server 1.5.5-1

Program received signal SIGABRT, Aborted.
[Switching to Thread -1208325952 (LWP 31274)]
0x0060d402 in __kernel_vsyscall ()
(gdb) bt
#0  0x0060d402 in __kernel_vsyscall ()
#1  0x06843079 in raise () from /lib/libc.so.6
#2  0x06844613 in abort () from /lib/libc.so.6
#3  0x0687757b in __libc_message () from /lib/libc.so.6
#4  0x0687e948 in _int_free () from /lib/libc.so.6
#5  0x06881e4d in free () from /lib/libc.so.6
#6  0x0023db3b in icalvalue_free (v=0x95f5310) at icalvalue.c:611
#7  0x0023526b in icalproperty_free (p=0x95f2040) at icalproperty.c:234
#8  0x00230ac5 in icalcomponent_free (c=0x953e3a0) at icalcomponent.c:240
#9  0x0020fc62 in free_icalcomponent (comp=Variable "comp" is not available.
) at e-cal-component.c:300
#10 0x002163f4 in e_cal_component_finalize (object=0x95ed750)
    at e-cal-component.c:389
#11 0x0039fd85 in g_object_unref () from /usr/lib/libgobject-2.0.so.0
#12 0x020abe0d in e_calendar_view_add_event (cal_view=0x9365800,
    client=0x939e320, dtstart=1138579200, default_zone=0x930e238,
    icalcomp=0x95ecc28, in_top_canvas=0) at e-calendar-view.c:398
#13 0x020addc7 in clipboard_get_text_cb (clipboard=0x951f0f8,
    text=0x953e100
"BEGIN:VCALENDAR\nCALSCALE:GREGORIAN\nPRODID:-//Ximian//NONSGML Evolution
Calendar//EN\nVERSION:2.0\nBEGIN:VTIMEZONE\nTZID:/softwarestudio.org/Olson_20011030_5/Asia/Tokyo\nX-LIC-LOCATION:Asia/Tokyo\nBEGIN:STA"...,
    cal_view=0x9365800) at e-calendar-view.c:831
#14 0x00f42981 in request_text_received_func (clipboard=0x951f0f8,
    selection_data=0xbfad1f34, data=0x95ee840) at gtkclipboard.c:952
---Type <return> to continue, or q <return> to quit---
#15 0x00f41d9f in selection_received (widget=0x95d0ad0,
    selection_data=0xbfad1f34, time=432934138) at gtkclipboard.c:864
#16 0x00ff0115 in _gtk_marshal_VOID__BOXED_UINT (closure=0x95edc30,
    return_value=0x0, n_param_values=3, param_values=0xbfad1d1c,
    invocation_hint=0xbfad1bfc, marshal_data=0xf41d4a) at gtkmarshalers.c:1298
#17 0x0039ddbd in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#18 0x003aef88 in g_signal_override_class_closure ()
   from /usr/lib/libgobject-2.0.so.0
#19 0x003b0402 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#20 0x003b174f in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#21 0x0102e6f0 in gtk_selection_retrieval_report (info=0x953e750, type=Variable
"type" is not available.
)
    at gtkselection.c:2447
#22 0x0103034e in IA__gtk_selection_convert (widget=0x95d0ad0, selection=0x45,
    target=0x47, time_=432934138) at gtkselection.c:965
#23 0x00f42078 in IA__gtk_clipboard_request_contents (clipboard=0x951f0f8,
    target=0x47, callback=0xf42946 <request_text_received_func>,
    user_data=0x95ee840) at gtkclipboard.c:916
#24 0x00f4284c in IA__gtk_clipboard_request_text (clipboard=0x951f0f8,
    callback=0x20adbcf <clipboard_get_text_cb>, user_data=0x9365800)
    at gtkclipboard.c:988
#25 0x020ac7d1 in e_calendar_view_paste_clipboard (cal_view=0x9365800)
    at e-calendar-view.c:861
#26 0x020f49b6 in gnome_calendar_paste_clipboard (gcal=0x92cd0a8)
---Type <return> to continue, or q <return> to quit---
    at gnome-cal.c:3298
#27 0x02098372 in paste_cmd (uic=0x939dd20, data=0x92cd0a8,
    path=0x95e49f0 "Paste") at calendar-commands.c:304
#28 0x04be9375 in bonobo_ui_component_add_verb_list ()
   from /usr/lib/libbonoboui-2.so.0
#29 0x0039ddbd in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#30 0x002cf6f9 in bonobo_closure_invoke_va_list ()
   from /usr/lib/libbonobo-2.so.0
#31 0x002cf8ea in bonobo_closure_invoke () from /usr/lib/libbonobo-2.so.0
#32 0x04be9533 in bonobo_ui_component_add_verb_list ()
   from /usr/lib/libbonoboui-2.so.0
#33 0x002d15e7 in _ORBIT_skel_small_Bonobo_UIComponent_execVerb ()
   from /usr/lib/libbonobo-2.so.0
#34 0x0069fb6c in ORBit_c_stub_invoke () from /usr/lib/libORBit-2.so.0
#35 0x002d82dc in Bonobo_UIComponent_execVerb () from /usr/lib/libbonobo-2.so.0
#36 0x04bef980 in bonobo_ui_engine_add_sync () from /usr/lib/libbonoboui-2.so.0
#37 0x003aa96d in g_cclosure_marshal_VOID__POINTER ()
   from /usr/lib/libgobject-2.0.so.0
#38 0x0039c6a5 in g_value_set_static_boxed () from /usr/lib/libgobject-2.0.so.0
#39 0x0039ddbd in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#40 0x003af5c1 in g_signal_override_class_closure ()
   from /usr/lib/libgobject-2.0.so.0
#41 0x003b0402 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#42 0x003b06a5 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#43 0x04beb801 in bonobo_ui_engine_emit_verb_on_w ()
   from /usr/lib/libbonoboui-2.so.0
#44 0x04bf4557 in bonobo_ui_sync_menu_new () from /usr/lib/libbonoboui-2.so.0
#45 0x003aa8c8 in g_cclosure_marshal_VOID__VOID ()
   from /usr/lib/libgobject-2.0.so.0
#46 0x0039ddbd in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#47 0x003aef88 in g_signal_override_class_closure ()
   from /usr/lib/libgobject-2.0.so.0
#48 0x003b0402 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#49 0x003b06a5 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#50 0x010d2f82 in closure_accel_activate (closure=0x93c66a0,
    return_value=0xbfad2e30, n_param_values=4, param_values=0xbfad2f3c,
    invocation_hint=0xbfad2e1c, marshal_data=0x0) at gtkwidget.c:3151
#51 0x0039ddbd in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#52 0x003aef88 in g_signal_override_class_closure ()
   from /usr/lib/libgobject-2.0.so.0
#53 0x003b02b3 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#54 0x003b06a5 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#55 0x00f1e0a4 in IA__gtk_accel_group_activate (accel_group=0x8dd55c0,
    accel_quark=1930, acceleratable=0x92890a8, accel_key=118,
    accel_mods=GDK_CONTROL_MASK) at gtkaccelgroup.c:766
#56 0x00f1e1a5 in IA__gtk_accel_groups_activate (object=0x92890a8,
---Type <return> to continue, or q <return> to quit---
    accel_key=118, accel_mods=GDK_CONTROL_MASK) at gtkaccelgroup.c:804
#57 0x010df9f6 in IA__gtk_window_activate_key (window=0x92890a8,
    event=0x8db11f8) at gtkwindow.c:7506
#58 0x010dfa5d in gtk_window_key_press_event (widget=0x92890a8,
    event=0x8db11f8) at gtkwindow.c:4543
#59 0x04c037ad in bonobo_window_remove_popup ()
   from /usr/lib/libbonoboui-2.so.0
#60 0x00ff1673 in _gtk_marshal_BOOLEAN__BOXED (closure=0x8d91278,
    return_value=0xbfad3390, n_param_values=2, param_values=0xbfad349c,
    invocation_hint=0xbfad337c, marshal_data=0x4c0376f) at gtkmarshalers.c:83
#61 0x0039c6a5 in g_value_set_static_boxed () from /usr/lib/libgobject-2.0.so.0
#62 0x0039ddbd in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#63 0x003af5c1 in g_signal_override_class_closure ()
   from /usr/lib/libgobject-2.0.so.0
#64 0x003b02b3 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#65 0x003b06a5 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#66 0x010ce9b0 in gtk_widget_event_internal (widget=0x92890a8, event=0x8db11f8)
    at gtkwidget.c:3735
#67 0x00febc54 in IA__gtk_propagate_event (widget=0x92890a8, event=0x8db11f8)
    at gtkmain.c:2149
#68 0x00fecc65 in IA__gtk_main_do_event (event=0x8db11f8) at gtkmain.c:1412
#69 0x00759233 in gdk_event_dispatch (source=0x8db3c88, callback=0,
    user_data=0x0) at gdkevents-x11.c:2291
---Type <return> to continue, or q <return> to quit---
#70 0x00b6ec33 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#71 0x00b71c73 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
#72 0x00b7201c in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#73 0x002be649 in bonobo_main () from /usr/lib/libbonobo-2.so.0
#74 0x0805d53f in main (argc=1, argv=0xbfad3bd4) at main.c:606
#75 0x068306b4 in __libc_start_main () from /lib/libc.so.6
#76 0x0804fe31 in _start ()


Comment 6 Lawrence Lim 2006-02-27 03:19:05 UTC
Bug is still observed in evolution-2.5.90-2.1 (FC5Test3)

Comment 7 Derek 2006-03-23 10:13:49 UTC
Still observed in evolution-2.6.0-1 (FC5 release).
This has been a problem since the start of FC4.

Comment 8 Derek 2006-03-23 19:43:38 UTC
Created attachment 126566 [details]
backtrace listing

Here is the backtrace log that appeared on the console.
A problem with glibc?

Comment 10 Matthew Barnes 2006-06-30 03:47:08 UTC
Verified that this still exists on Evolution 2.7.3.  Will investigate.

Comment 11 Matthew Barnes 2006-07-29 06:55:15 UTC
I believe I have a solution for this.

http://bugzilla.gnome.org/show_bug.cgi?id=334464#c14

Comment 12 Matthew Barnes 2006-08-01 14:46:53 UTC
evolution-2.7.4-4

Comment 13 Matthew Barnes 2006-08-02 15:32:22 UTC
*** Bug 188714 has been marked as a duplicate of this bug. ***

Comment 14 Matthew Barnes 2006-08-02 15:36:33 UTC
Upstream cannot reproduce, and found my solution to be flawed.  So I suspect the
problem may be in one of Red Hat's own patches, and that my latest patch is just
masking the problem.  Will reinvestigate.

Comment 15 Mayank Jain 2006-08-03 06:49:46 UTC
(In reply to comment #0)
> Steps to Reproduce:
> 1.Create a new appointment
> 2.Change a view to Week and highlight the appointment
> 3.press Ctrl+c and Ctrl+v

This creates a new appointment for me... no crash.
i'm using "Gnome evolution-2.8 2.7.90", compiled against CVS HEAD (yesterday).

Comment 16 Matthew Barnes 2006-08-03 20:08:06 UTC
The problem turned out to be in evolution-data-server.

We were including patches from an upstream bug (see link below) that claimed to
fix memory leaks.  These patches were subsequently rejected by upstream because
they did not fix the problem correctly.  The correct fixes were reportedly
committed at the time the patches were rejected.  The first attachment in the
upstream bug report has the offending source code that was causing the crash.

http://bugzilla.gnome.org/show_bug.cgi?id=309079

The solution was to remove the rejected patches.

Fixed in evolution-data-server-1.7.4-5

Comment 17 Matthew Barnes 2006-08-03 21:22:43 UTC
Also fixed in evolution-data-server-1.6.3-1.fc5.2, in Fedora Core 5 updates.

Comment 18 Mayank Jain 2006-08-04 06:59:07 UTC
Thanks Matthew :)