Bug 210142

Summary: Evolution (in indic locales) crashes when double clicking text widget in calendar
Product: [Fedora] Fedora Reporter: Mayank Jain <majain>
Component: evolutionAssignee: Matthew Barnes <mbarnes>
Status: CLOSED RAWHIDE QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: rawhideCC: eng-i18n-bugs, llim, majain
Target Milestone: ---Keywords: i18n
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: evolution-data-server-1.9.2-3.fc7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-11-10 04:30:40 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: 207681, 210270    

Description Mayank Jain 2006-10-10 13:14:23 UTC
Description of problem:
Evolution (in indic locales) crashes when double clicking text widget in calendar.

Crash was observed with hi_IN, pa_IN, te_IN, ta_IN, mr_IN, bn_IN, ml_IN
but NOT in si_LK, gu_IN, as_IN, or_IN, kn_IN, ja_JP

Version-Release number of selected component (if applicable):
evolution-2.8.0-f.fc6

How reproducible:
always

Steps to Reproduce:
1. GTK_IM_MODULE=scim LANG=hi_IN.UTF-8 evolution
2. Switch to calendar, day view
3. Double click on any text widget (aka time slot)
  
Actual results:
Crash

Expected results:
Double click should bring up an appointment editor

Additional info:
Not all locales make evo crash. Is this issue related to translation or locale
specific data? time? -- backtrace attached in replies to the report.

Comment 1 Mayank Jain 2006-10-10 13:16:25 UTC
The GDB backtrace is as follows... actually, this freezes my desktop & i had to
gdb backtrace from an ssh connection.

----------------START----------------
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1209002288 (LWP 10938)]
0x006c0986 in parse_with_strptime (value=0x94ab5a0 "�/�\a�ݮ�",
result=0xbfaee820, formats=0xbfaee7cc, n_formats=3) at e-time-utils.c:1499
1499            while (isspace (*pos))
(gdb) bt
#0  0x006c0986 in parse_with_strptime (value=0x94ab5a0 "�/�\a�ݮ�",
result=0xbfaee820, formats=0xbfaee7cc, n_formats=3) at e-time-utils.c:1499
#1  0x006c0bbc in e_time_parse_date (value=0x94ab5a0 "�/�\a�ݮ�",
result=0xbfaee820) at e-time-utils.c:1731
#2  0x001357f3 in e_date_edit_parse_date (dedit=0xb7f016a0, date_text=0xb7cc6018
"\002", date_tm=0x0) at e-dateedit.c:1470
#3  0x0013586c in e_date_edit_check_date_changed (dedit=0x94a98a0) at
e-dateedit.c:1853
#4  0x00136619 in e_date_edit_get_date (dedit=0x94a98a0, year=0xbfaee8e4,
month=0xbfaee8e8, day=0xbfaee8ec) at e-dateedit.c:689
#5  0x01d9ea1a in update_end_time_selector (epage=0x949d7a0) at event-page.c:1591
#6  0x01d9f093 in init_widgets (epage=0x949d7a0) at event-page.c:2913
#7  0x01d9f633 in event_page_construct (epage=0x949d7a0, model=0x9402528,
client=0x922a990) at event-page.c:3092
#8  0x01da189d in event_page_new (model=0x9402528, client=0x922a990,
uic=0x9272d80) at event-page.c:3115
#9  0x01d9cbf0 in event_editor_construct (ee=0x9061450, client=0x922a990) at
event-editor.c:559
#10 0x01d9d243 in event_editor_new (client=0x922a990,
flags=COMP_EDITOR_NEW_ITEM) at event-editor.c:842
#11 0x01d35391 in open_event_with_flags (cal_view=0x91f3a88, client=0x922a990,
icalcomp=0x90e86a0, flags=1) at e-calendar-view.c:1962
#12 0x01d3665d in e_calendar_view_new_appointment_for (cal_view=0x91f3a88,
dtstart=1160546400, dtend=1160548200, all_day=0, meeting=0)
    at e-calendar-view.c:1901
#13 0x01d523b0 in e_day_view_on_main_canvas_button_press (widget=0x91d6470,
event=0x927caa0, day_view=0x91f3a88) at e-day-view.c:3524
#14 0x010d800d in _gtk_marshal_BOOLEAN__BOXED (closure=0x91f60a8,
return_value=0xbfaeed68, n_param_values=2, param_values=0xbfaeede8, 
    invocation_hint=0xbfaeed54, marshal_data=0x1d522cd) at gtkmarshalers.c:84
#15 0x003a1a5e in IA__g_closure_invoke (closure=0x91f60a8,
return_value=0xbfaeed68, n_param_values=2, param_values=0xbfaeede8,
invocation_hint=0xbfaeed54)
    at gclosure.c:490
#16 0x003adb9f in signal_emit_unlocked_R (node=0x90220b8, detail=0,
instance=0x91d6470, emission_return=0xbfaeefa8, instance_and_params=0xbfaeede8)
    at gsignal.c:2440
#17 0x003ae708 in IA__g_signal_emit_valist (instance=0x91d6470, signal_id=59,
detail=0, 
    var_args=0xbfaef010 "8���pd\035\tH����\025\033\001pd\035\t
��\b��\016\t��\016\ttd\035\t\001") at gsignal.c:2209
#18 0x003aea0b in IA__g_signal_emit (instance=0x91d6470, signal_id=59, detail=0)
at gsignal.c:2243
#19 0x011b1761 in gtk_widget_event_internal (widget=0x91d6470, event=0x927caa0)
at gtkwidget.c:3911
#20 0x010d2bad in IA__gtk_propagate_event (widget=0x91d6470, event=0x927caa0) at
gtkmain.c:2188
#21 0x010d3ae3 in IA__gtk_main_do_event (event=0x927caa0) at gtkmain.c:1422
#22 0x008192c4 in gdk_event_dispatch (source=0x8f51ca8, callback=0,
user_data=0x0) at gdkevents-x11.c:2320
#23 0x00523ed8 in g_main_dispatch (context=0x8f51cf0) at gmain.c:2045
#24 0x0052405d in IA__g_main_context_dispatch (context=0x8f51cf0) at gmain.c:2596
#25 0x00525aee in g_main_context_iterate (context=0x8f51cf0, block=1,
dispatch=1, self=0x8f350a8) at gmain.c:2677
#26 0x00526887 in IA__g_main_loop_run (loop=0x8fa27a0) at gmain.c:2881
#27 0x02eaba23 in bonobo_main () from /usr/lib/libbonobo-2.so.0
#28 0x08059009 in main (argc=1, argv=0xbfaef2b4) at main.c:615
(gdb) 
----------------END----------------


----------------START----------------
(gdb) thread apply all bt

Thread 4 (Thread 41737104 (LWP 11028)):
#0  0x00fd9402 in __kernel_vsyscall ()
#1  0x07f0d503 in poll () from /lib/libc.so.6
#2  0x00522a03 in g_main_context_poll (context=<value optimized out>,
timeout=-1, priority=1, fds=0x947ef40, n_fds=1) at gmain.c:2979
#3  0x00525aca in g_main_context_iterate (context=0x947eae8, block=1,
dispatch=1, self=0x947e778) at gmain.c:2672
#4  0x00526887 in IA__g_main_loop_run (loop=0x947bb30) at gmain.c:2881
#5  0x001f3bd6 in startup_mainloop (arg=0x0) at e-book.c:3760
#6  0x00539e53 in g_thread_create_proxy (data=0x947e778) at gthread.c:553
#7  0x006743db in start_thread () from /lib/libpthread.so.0
#8  0x07f1706e in clone () from /lib/libc.so.6

Thread 3 (Thread 94354320 (LWP 11027)):
#0  0x00fd9402 in __kernel_vsyscall ()
#1  0x0067842c in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x00315bc9 in g_cond_timed_wait_posix_impl (cond=0x9231bc8,
entered_mutex=0x0, abs_time=0x45) at gthread-posix.c:231
#3  0x0050d02e in g_async_queue_pop_intern_unlocked (queue=0x8f52f80, try=0,
end_time=0x59fb358) at gasyncqueue.c:341
#4  0x0053b0b6 in g_thread_pool_wait_for_new_task (pool=0x8f52f48) at
gthreadpool.c:220
#5  0x0053b21f in g_thread_pool_thread_proxy (data=0x8f52f48) at gthreadpool.c:254
#6  0x00539e53 in g_thread_create_proxy (data=0x90e8678) at gthread.c:553
#7  0x006743db in start_thread () from /lib/libpthread.so.0
#8  0x07f1706e in clone () from /lib/libc.so.6

Thread 2 (Thread 20982672 (LWP 10970)):
#0  0x00fd9402 in __kernel_vsyscall ()
#1  0x07f0d503 in poll () from /lib/libc.so.6
#2  0x00522a03 in g_main_context_poll (context=<value optimized out>,
timeout=-1, priority=9, fds=0x9233c38, n_fds=9) at gmain.c:2979
#3  0x00525aca in g_main_context_iterate (context=0x92189f0, block=1,
dispatch=1, self=0x9230ad8) at gmain.c:2672
#4  0x00526887 in IA__g_main_loop_run (loop=0x91f5790) at gmain.c:2881
#5  0x02cdb2e0 in link_set_io_thread () from /usr/lib/libORBit-2.so.0
#6  0x00539e53 in g_thread_create_proxy (data=0x9230ad8) at gthread.c:553
#7  0x006743db in start_thread () from /lib/libpthread.so.0
#8  0x07f1706e in clone () from /lib/libc.so.6

Thread 1 (Thread -1209002288 (LWP 10938)):
#0  0x006c0986 in parse_with_strptime (value=0x94ab5a0 "�/�\a�ݮ�",
result=0xbfaee820, formats=0xbfaee7cc, n_formats=3) at e-time-utils.c:1499
#1  0x006c0bbc in e_time_parse_date (value=0x94ab5a0 "�/�\a�ݮ�",
result=0xbfaee820) at e-time-utils.c:1731
#2  0x001357f3 in e_date_edit_parse_date (dedit=0xb7f016a0, date_text=0xb7cc6018
"\002", date_tm=0x0) at e-dateedit.c:1470
#3  0x0013586c in e_date_edit_check_date_changed (dedit=0x94a98a0) at
e-dateedit.c:1853
#4  0x00136619 in e_date_edit_get_date (dedit=0x94a98a0, year=0xbfaee8e4,
month=0xbfaee8e8, day=0xbfaee8ec) at e-dateedit.c:689
#5  0x01d9ea1a in update_end_time_selector (epage=0x949d7a0) at event-page.c:1591
#6  0x01d9f093 in init_widgets (epage=0x949d7a0) at event-page.c:2913
#7  0x01d9f633 in event_page_construct (epage=0x949d7a0, model=0x9402528,
client=0x922a990) at event-page.c:3092
#8  0x01da189d in event_page_new (model=0x9402528, client=0x922a990,
uic=0x9272d80) at event-page.c:3115
#9  0x01d9cbf0 in event_editor_construct (ee=0x9061450, client=0x922a990) at
event-editor.c:559
#10 0x01d9d243 in event_editor_new (client=0x922a990,
flags=COMP_EDITOR_NEW_ITEM) at event-editor.c:842
#11 0x01d35391 in open_event_with_flags (cal_view=0x91f3a88, client=0x922a990,
icalcomp=0x90e86a0, flags=1) at e-calendar-view.c:1962
#12 0x01d3665d in e_calendar_view_new_appointment_for (cal_view=0x91f3a88,
dtstart=1160546400, dtend=1160548200, all_day=0, meeting=0)
    at e-calendar-view.c:1901
#13 0x01d523b0 in e_day_view_on_main_canvas_button_press (widget=0x91d6470,
event=0x927caa0, day_view=0x91f3a88) at e-day-view.c:3524
#14 0x010d800d in _gtk_marshal_BOOLEAN__BOXED (closure=0x91f60a8,
return_value=0xbfaeed68, n_param_values=2, param_values=0xbfaeede8, 
    invocation_hint=0xbfaeed54, marshal_data=0x1d522cd) at gtkmarshalers.c:84
#15 0x003a1a5e in IA__g_closure_invoke (closure=0x91f60a8,
return_value=0xbfaeed68, n_param_values=2, param_values=0xbfaeede8,
invocation_hint=0xbfaeed54)
---Type <return> to continue, or q <return> to quit---
    at gclosure.c:490
#16 0x003adb9f in signal_emit_unlocked_R (node=0x90220b8, detail=0,
instance=0x91d6470, emission_return=0xbfaeefa8, instance_and_params=0xbfaeede8)
    at gsignal.c:2440
#17 0x003ae708 in IA__g_signal_emit_valist (instance=0x91d6470, signal_id=59,
detail=0, 
    var_args=0xbfaef010 "8���pd\035\tH����\025\033\001pd\035\t
��\b��\016\t��\016\ttd\035\t\001") at gsignal.c:2209
#18 0x003aea0b in IA__g_signal_emit (instance=0x91d6470, signal_id=59, detail=0)
at gsignal.c:2243
#19 0x011b1761 in gtk_widget_event_internal (widget=0x91d6470, event=0x927caa0)
at gtkwidget.c:3911
#20 0x010d2bad in IA__gtk_propagate_event (widget=0x91d6470, event=0x927caa0) at
gtkmain.c:2188
#21 0x010d3ae3 in IA__gtk_main_do_event (event=0x927caa0) at gtkmain.c:1422
#22 0x008192c4 in gdk_event_dispatch (source=0x8f51ca8, callback=0,
user_data=0x0) at gdkevents-x11.c:2320
#23 0x00523ed8 in g_main_dispatch (context=0x8f51cf0) at gmain.c:2045
#24 0x0052405d in IA__g_main_context_dispatch (context=0x8f51cf0) at gmain.c:2596
#25 0x00525aee in g_main_context_iterate (context=0x8f51cf0, block=1,
dispatch=1, self=0x8f350a8) at gmain.c:2677
#26 0x00526887 in IA__g_main_loop_run (loop=0x8fa27a0) at gmain.c:2881
#27 0x02eaba23 in bonobo_main () from /usr/lib/libbonobo-2.so.0
#28 0x08059009 in main (argc=1, argv=0xbfaef2b4) at main.c:615
(gdb) 
----------------END----------------



Comment 2 Mayank Jain 2006-10-10 13:17:35 UTC
The double click is the culprit here...
If i single click, everything works as expected.

Comment 3 Mayank Jain 2006-10-10 13:25:00 UTC
Matthew, what do you say about this?
What can be the reason of this happening in certain locales only...

Comment 4 Matthias Clasen 2006-10-17 05:17:13 UTC
Need to backport the fix from RHEL5

Comment 5 Matthew Barnes 2006-11-10 04:30:40 UTC
Fixed in evolution-data-server-1.9.2-3.fc7 using patch from bug #210270.

Comment 6 Mayank Jain 2006-11-10 08:26:50 UTC
Thanks Matthew :)