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 628497 - Crash in pango_layout_line_get_extents at pango-layout.c:4558
Crash in pango_layout_line_get_extents at pango-layout.c:4558
Status: RESOLVED OBSOLETE
Product: pango
Classification: Platform
Component: general
1.28.x
Other Linux
: Normal critical
: ---
Assigned To: pango-maint
pango-maint
: 642796 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-09-01 11:26 UTC by Akhil Laddha
Modified: 2012-08-25 17:58 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Akhil Laddha 2010-09-01 11:26:31 UTC
evolution 2.31.92

>rpm -qa | grep pango

pango-1.28.0-2.7.i586
libpangomm-1_4-1-2.26.2-2.3.i586

Changing the week settings in edit -> preferences -> calendar and task preference, wanted to add Sat and Sun as work week but evolution crashed as soon as i enabled Sat check box.

may be pango bug and related to bug 625998


Program received signal SIGSEGV, Segmentation fault.
pango_layout_line_get_extents (line=0x0, ink_rect=0x0, logical_rect=0xbfffbdac) at pango-layout.c:4558
4558	pango-layout.c: No such file or directory.
	in pango-layout.c
(gdb) t a a bt

Thread 242 (Thread 0xa49fdb70 (LWP 3538))

  • #0 g_value_peek_pointer
    from /home/lakhil/opt/gnome3/lib/evolution/2.32/libeutil.so.0
  • #1 e_marshal_VOID__INT_INT
    at e-marshal.c line 1011
  • #2 g_closure_invoke
    at gclosure.c line 766
  • #3 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #4 g_signal_emit_valist
    at gsignal.c line 2983
  • #5 g_signal_emit
    at gsignal.c line 3040
  • #6 e_table_model_rows_deleted
    at e-table-model.c line 584
  • #7 redo_queries
    at e-cal-model.c line 2357
  • #8 e_cal_model_set_search_query
  • #9 update_memo_view
    at gnome-cal.c line 1357
  • #10 update_todo_view_async
    at gnome-cal.c line 1265
  • #11 message_proxy
    at gnome-cal.c line 187
  • #12 g_thread_pool_thread_proxy
    at gthreadpool.c line 314
  • #13 g_thread_create_proxy
    at gthread.c line 1897
  • #14 start_thread
    from /lib/libpthread.so.0
  • #15 clone
    from /lib/libc.so.6

Thread 1 (Thread 0xb6067830 (LWP 2970))

  • #0 pango_layout_line_get_extents
    at pango-layout.c line 4558
  • #1 get_line_extents_layout_coords
    at pango-layout.c line 2378
  • #2 pango_layout_get_extents_internal
    at pango-layout.c line 2489
  • #3 gtk_label_size_request
    at gtklabel.c line 3184
  • #4 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #5 g_type_class_meta_marshal
    at gclosure.c line 877
  • #6 g_closure_invoke
    at gclosure.c line 766
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #8 g_signal_emit_valist
    at gsignal.c line 2983
  • #9 g_signal_emit_by_name
    at gsignal.c line 3077
  • #10 do_size_request
    at gtksizegroup.c line 628
  • #11 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #12 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #13 gtk_box_size_request
    at gtkbox.c line 280
  • #14 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #15 g_type_class_meta_marshal
    at gclosure.c line 877
  • #16 g_closure_invoke
    at gclosure.c line 766
  • #17 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #18 g_signal_emit_valist
    at gsignal.c line 2983
  • #19 g_signal_emit_by_name
    at gsignal.c line 3077
  • #20 do_size_request
    at gtksizegroup.c line 628
  • #21 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #22 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #23 gtk_event_box_size_request
    at gtkeventbox.c line 494
  • #24 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #25 g_type_class_meta_marshal
    at gclosure.c line 877
  • #26 g_closure_invoke
    at gclosure.c line 766
  • #27 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #28 g_signal_emit_valist
    at gsignal.c line 2983
  • #29 g_signal_emit_by_name
    at gsignal.c line 3077
  • #30 do_size_request
    at gtksizegroup.c line 628
  • #31 compute_base_dimension
    at gtksizegroup.c line 638
  • #32 compute_dimension
    at gtksizegroup.c line 661
  • #33 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 817
  • #34 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #35 shell_sidebar_size_request
    at e-shell-sidebar.c line 248
  • #36 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #37 g_type_class_meta_marshal
    at gclosure.c line 877
  • #38 g_closure_invoke
    at gclosure.c line 766
  • #39 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #40 g_signal_emit_valist
    at gsignal.c line 2983
  • #41 g_signal_emit_by_name
    at gsignal.c line 3077
  • #42 do_size_request
    at gtksizegroup.c line 628
  • #43 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #44 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #45 gtk_notebook_size_request
    at gtknotebook.c line 1891
  • #46 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #47 g_type_class_meta_marshal
    at gclosure.c line 877
  • #48 g_closure_invoke
    at gclosure.c line 766
  • #49 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #50 g_signal_emit_valist
    at gsignal.c line 2983
  • #51 g_signal_emit_by_name
    at gsignal.c line 3077
  • #52 do_size_request
    at gtksizegroup.c line 628
  • #53 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #54 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #55 shell_switcher_size_request
    at e-shell-switcher.c line 264
  • #56 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #57 g_type_class_meta_marshal
    at gclosure.c line 877
  • #58 g_closure_invoke
    at gclosure.c line 766
  • #59 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #60 g_signal_emit_valist
    at gsignal.c line 2983
  • #61 g_signal_emit_by_name
    at gsignal.c line 3077
  • #62 do_size_request
    at gtksizegroup.c line 628
  • #63 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #64 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #65 gtk_paned_size_request
    at gtkpaned.c line 768
  • #66 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #67 g_type_class_meta_marshal
    at gclosure.c line 877
  • #68 g_closure_invoke
    at gclosure.c line 766
  • #69 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #70 g_signal_emit_valist
    at gsignal.c line 2983
  • #71 g_signal_emit_by_name
    at gsignal.c line 3077
  • #72 do_size_request
    at gtksizegroup.c line 628
  • #73 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #74 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #75 gtk_box_size_request
    at gtkbox.c line 280
  • #76 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #77 g_type_class_meta_marshal
  • #78 g_closure_invoke
    at gclosure.c line 766
  • #79 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #80 g_signal_emit_valist
    at gsignal.c line 2983
  • #81 g_signal_emit_by_name
    at gsignal.c line 3077
  • #82 do_size_request
    at gtksizegroup.c line 628
  • #83 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #84 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #85 gtk_window_size_request
    at gtkwindow.c line 4953
  • #86 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #87 g_type_class_meta_marshal
    at gclosure.c line 877
  • #88 g_closure_invoke
    at gclosure.c line 766
  • #89 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #90 g_signal_emit_valist
    at gsignal.c line 2983
  • #91 g_signal_emit_by_name
    at gsignal.c line 3077
  • #92 do_size_request
    at gtksizegroup.c line 628
  • #93 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #94 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #95 gtk_window_compute_configure_request
    at gtkwindow.c line 5837
  • #96 gtk_window_move_resize
    at gtkwindow.c line 6049
  • #97 gtk_window_check_resize
    at gtkwindow.c line 5403
  • #98 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #99 g_type_class_meta_marshal
    at gclosure.c line 877
  • #100 g_closure_invoke
    at gclosure.c line 766
  • #101 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #102 g_signal_emit_valist
    at gsignal.c line 2983
  • #103 g_signal_emit
    at gsignal.c line 3040
  • #104 IA__gtk_container_check_resize
    at gtkcontainer.c line 1425
  • #105 gtk_container_idle_sizer
    at gtkcontainer.c line 1350
  • #106 gdk_threads_dispatch
    at gdk.c line 512
  • #107 g_idle_dispatch
    at gmain.c line 4224
  • #108 g_main_dispatch
    at gmain.c line 2119
  • #109 g_main_context_dispatch
    at gmain.c line 2672
  • #110 g_main_context_iterate
    at gmain.c line 2750
  • #111 g_main_loop_run
    at gmain.c line 2958
  • #112 IA__gtk_main
    at gtkmain.c line 1219
  • #113 main
    at main.c line 644
  • #0 pango_layout_line_get_extents
    at pango-layout.c line 4558
  • #1 get_line_extents_layout_coords
    at pango-layout.c line 2378
  • #2 pango_layout_get_extents_internal
    at pango-layout.c line 2489
  • #3 gtk_label_size_request
    at gtklabel.c line 3184
  • #4 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #5 g_type_class_meta_marshal
    at gclosure.c line 877
  • #6 g_closure_invoke
    at gclosure.c line 766
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #8 g_signal_emit_valist
    at gsignal.c line 2983
  • #9 g_signal_emit_by_name
    at gsignal.c line 3077
  • #10 do_size_request
    at gtksizegroup.c line 628
  • #11 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #12 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #13 gtk_box_size_request
    at gtkbox.c line 280
  • #14 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #15 g_type_class_meta_marshal
    at gclosure.c line 877
  • #16 g_closure_invoke
    at gclosure.c line 766
  • #17 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #18 g_signal_emit_valist
    at gsignal.c line 2983
  • #19 g_signal_emit_by_name
    at gsignal.c line 3077
  • #20 do_size_request
    at gtksizegroup.c line 628
  • #21 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #22 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #23 gtk_event_box_size_request
    at gtkeventbox.c line 494
  • #24 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #25 g_type_class_meta_marshal
    at gclosure.c line 877
  • #26 g_closure_invoke
    at gclosure.c line 766
  • #27 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #28 g_signal_emit_valist
    at gsignal.c line 2983
  • #29 g_signal_emit_by_name
    at gsignal.c line 3077
  • #30 do_size_request
    at gtksizegroup.c line 628
  • #31 compute_base_dimension
    at gtksizegroup.c line 638
  • #32 compute_dimension
    at gtksizegroup.c line 661
  • #33 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 817
  • #34 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #35 shell_sidebar_size_request
    at e-shell-sidebar.c line 248
  • #36 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #37 g_type_class_meta_marshal
    at gclosure.c line 877
  • #38 g_closure_invoke
    at gclosure.c line 766
  • #39 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #40 g_signal_emit_valist
    at gsignal.c line 2983
  • #41 g_signal_emit_by_name
    at gsignal.c line 3077
  • #42 do_size_request
    at gtksizegroup.c line 628
  • #43 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #44 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #45 gtk_notebook_size_request
    at gtknotebook.c line 1891
  • #46 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #47 g_type_class_meta_marshal
    at gclosure.c line 877
  • #48 g_closure_invoke
    at gclosure.c line 766
  • #49 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #50 g_signal_emit_valist
    at gsignal.c line 2983
  • #51 g_signal_emit_by_name
    at gsignal.c line 3077
  • #52 do_size_request
    at gtksizegroup.c line 628
  • #53 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #54 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #55 shell_switcher_size_request
    at e-shell-switcher.c line 264
  • #56 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #57 g_type_class_meta_marshal
    at gclosure.c line 877
  • #58 g_closure_invoke
    at gclosure.c line 766
  • #59 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #60 g_signal_emit_valist
    at gsignal.c line 2983
  • #61 g_signal_emit_by_name
    at gsignal.c line 3077
  • #62 do_size_request
    at gtksizegroup.c line 628
  • #63 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #64 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #65 gtk_paned_size_request
    at gtkpaned.c line 768
  • #66 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #67 g_type_class_meta_marshal
    at gclosure.c line 877
  • #68 g_closure_invoke
    at gclosure.c line 766
  • #69 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #70 g_signal_emit_valist
    at gsignal.c line 2983
  • #71 g_signal_emit_by_name
    at gsignal.c line 3077
  • #72 do_size_request
    at gtksizegroup.c line 628
  • #73 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #74 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #75 gtk_box_size_request
    at gtkbox.c line 280
  • #76 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #77 g_type_class_meta_marshal
    at gclosure.c line 877
  • #78 g_closure_invoke
    at gclosure.c line 766
  • #79 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #80 g_signal_emit_valist
    at gsignal.c line 2983
  • #81 g_signal_emit_by_name
    at gsignal.c line 3077
  • #82 do_size_request
    at gtksizegroup.c line 628
  • #83 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #84 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #85 gtk_window_size_request
    at gtkwindow.c line 4953
  • #86 g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 568
  • #87 g_type_class_meta_marshal
    at gclosure.c line 877
  • #88 g_closure_invoke
    at gclosure.c line 766
  • #89 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #90 g_signal_emit_valist
    at gsignal.c line 2983
  • #91 g_signal_emit_by_name
    at gsignal.c line 3077
  • #92 do_size_request
    at gtksizegroup.c line 628
  • #93 _gtk_size_group_compute_requisition
    at gtksizegroup.c line 828
  • #94 IA__gtk_widget_size_request
    at gtkwidget.c line 3878
  • #95 gtk_window_compute_configure_request
    at gtkwindow.c line 5837
  • #96 gtk_window_move_resize
    at gtkwindow.c line 6049
  • #97 gtk_window_check_resize
    at gtkwindow.c line 5403
  • #98 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #99 g_type_class_meta_marshal
    at gclosure.c line 877
  • #100 g_closure_invoke
    at gclosure.c line 766
  • #101 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #102 g_signal_emit_valist
    at gsignal.c line 2983
  • #103 g_signal_emit
    at gsignal.c line 3040
  • #104 IA__gtk_container_check_resize
    at gtkcontainer.c line 1425
  • #105 gtk_container_idle_sizer
    at gtkcontainer.c line 1350
  • #106 gdk_threads_dispatch
    at gdk.c line 512
  • #107 g_idle_dispatch
    at gmain.c line 4224
  • #108 g_main_dispatch
    at gmain.c line 2119
  • #109 g_main_context_dispatch
    at gmain.c line 2672
  • #110 g_main_context_iterate
    at gmain.c line 2750
  • #111 g_main_loop_run
    at gmain.c line 2958
  • #112 IA__gtk_main
    at gtkmain.c line 1219
  • #113 main
    at main.c line 644

Comment 1 Matthew Barnes 2010-09-01 11:49:25 UTC
No idea what's causing 'line' to be NULL in pango_layout_line_get_extents(), but the LINE_IS_VALID macro ought to check for NULL.

#define LINE_IS_VALID(line) ((line) != NULL && (line)->layout != NULL)
Comment 2 Behdad Esfahbod 2010-09-28 01:11:22 UTC
Fixed the LINE_IS_VALID.  The only case I can imagine NULL getting there is if two threads are messing up with the same layout at the same time.  Which I have no evidence to believe is what's happening here.  No idea where to go from here.
Comment 3 Akhil Laddha 2011-02-20 10:17:48 UTC
*** Bug 642796 has been marked as a duplicate of this bug. ***