Crash in gtk_flow_box_measure()
It is really hard to reproduce this, but you'll need:
- Empty widget with 0px natural height
-
row-spacing
set to 0 -
orientation
set to vertical
From a quick assessment of the code, looks like the crash comes from a division by zero.
The backtrace:
Thread 1 "gnome-todo" received signal SIGFPE, Arithmetic exception.
0x00007ffff77da205 in gtk_flow_box_measure (widget=0x55555568c480, orientation=<optimized out>, for_size=<optimized out>, minimum=0x7fffffffcbd8, natural=0x7fffffffcbdc, minimum_baseline=<optimized out>, natural_baseline=0x7fffffffcbd4) at ../gtk/gtkflowbox.c:1919
1919 ../gtk/gtkflowbox.c: No such file or directory.
(gdb) bt
#0 0x00007ffff77da205 in gtk_flow_box_measure (widget=0x55555568c480, orientation=<optimized out>, for_size=<optimized out>, minimum=0x7fffffffcbd8, natural=0x7fffffffcbdc, minimum_baseline=<optimized out>, natural_baseline=0x7fffffffcbd4) at ../gtk/gtkflowbox.c:1919
#1 0x00007ffff78a44e9 in gtk_widget_query_size_for_orientation (widget=widget@entry=0x55555568c480, orientation=orientation@entry=GTK_ORIENTATION_HORIZONTAL, for_size=for_size@entry=325, minimum=minimum@entry=0x7fffffffcd98, natural=natural@entry=0x7fffffffcd9c, minimum_baseline=minimum_baseline@entry=0x0, natural_baseline=0x0) at ../gtk/gtksizerequest.c:284
#2 0x00007ffff78a38d6 in gtk_widget_measure (widget=0x55555568c480, orientation=GTK_ORIENTATION_HORIZONTAL, for_size=325, minimum=0x7fffffffcd98, natural=0x7fffffffcd9c, minimum_baseline=0x0, natural_baseline=0x0) at ../gtk/gtksizerequest.c:504
#3 0x00007ffff78a44e9 in gtk_widget_query_size_for_orientation (widget=widget@entry=0x55555591cd90, orientation=orientation@entry=GTK_ORIENTATION_HORIZONTAL, for_size=for_size@entry=325, minimum=minimum@entry=0x7fffffffcedc, natural=natural@entry=0x0, minimum_baseline=minimum_baseline@entry=0x0, natural_baseline=0x0) at ../gtk/gtksizerequest.c:284
#4 0x00007ffff78a38d6 in gtk_widget_measure (widget=widget@entry=0x55555591cd90, orientation=orientation@entry=GTK_ORIENTATION_HORIZONTAL, for_size=325, minimum=minimum@entry=0x7fffffffcedc, natural=natural@entry=0x0, minimum_baseline=minimum_baseline@entry=0x0, natural_baseline=0x0) at ../gtk/gtksizerequest.c:504
#5 0x00007ffff7888b44 in gtk_scrolled_window_size_allocate (widget=<optimized out>, width=1462, height=325, baseline=<optimized out>) at ../gtk/gtkscrolledwindow.c:1514
#6 0x00007ffff7945694 in gtk_widget_allocate (widget=widget@entry=0x555555900710, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x5555571ba5d0) at ../gtk/gtkwidget.c:4084
#7 0x00007ffff7945744 in gtk_widget_size_allocate (widget=widget@entry=0x555555900710, allocation=allocation@entry=0x7fffffffd0f0, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#8 0x00007ffff775f6d8 in gtk_box_layout_allocate (layout_manager=<optimized out>, widget=<optimized out>, width=<optimized out>, height=<optimized out>, baseline=-1) at ../gtk/gtkboxlayout.c:689
#9 0x00007ffff794521d in gtk_widget_allocate (widget=widget@entry=0x55555591a430, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x0) at ../gtk/gtkwidget.c:4071
#10 0x00007ffff7945744 in gtk_widget_size_allocate (widget=0x55555591a430, allocation=allocation@entry=0x7fffffffd240, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#11 0x00007ffff775e45f in gtk_bin_size_allocate (widget=0x55555592a2b0, width=1462, height=824, baseline=-1) at ../gtk/gtkbin.c:60
#12 0x00007ffff7945694 in gtk_widget_allocate (widget=widget@entry=0x55555592a2b0, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x0) at ../gtk/gtkwidget.c:4084
#13 0x00007ffff7945744 in gtk_widget_size_allocate (widget=0x55555592a2b0, allocation=allocation@entry=0x7fffffffd390, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#14 0x00007ffff78b0c2b in gtk_stack_size_allocate (widget=<optimized out>, width=<optimized out>, height=<optimized out>, baseline=<optimized out>) at ../gtk/gtkstack.c:2437
#15 0x00007ffff7945694 in gtk_widget_allocate (widget=widget@entry=0x555555927280, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x0) at ../gtk/gtkwidget.c:4084
#16 0x00007ffff7945744 in gtk_widget_size_allocate (widget=0x555555927280, allocation=allocation@entry=0x7fffffffd4d0, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#17 0x00007ffff775e45f in gtk_bin_size_allocate (widget=0x5555558e7790, width=1462, height=824, baseline=-1) at ../gtk/gtkbin.c:60
#18 0x00007ffff7945694 in gtk_widget_allocate (widget=widget@entry=0x5555558e7790, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x0) at ../gtk/gtkwidget.c:4084
#19 0x00007ffff7945744 in gtk_widget_size_allocate (widget=0x5555558e7790, allocation=allocation@entry=0x7fffffffd620, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#20 0x00007ffff78b0c2b in gtk_stack_size_allocate (widget=<optimized out>, width=<optimized out>, height=<optimized out>, baseline=<optimized out>) at ../gtk/gtkstack.c:2437
#21 0x00007ffff7945694 in gtk_widget_allocate (widget=widget@entry=0x5555558e5270, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x0) at ../gtk/gtkwidget.c:4084
#22 0x00007ffff7945744 in gtk_widget_size_allocate (widget=widget@entry=0x5555558e5270, allocation=allocation@entry=0x7fffffffd7c0, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#23 0x00007ffff784b8f3 in gtk_overlay_layout_allocate (layout_manager=0x5555557d6aa0, widget=0x5555558e1140, width=1462, height=824, baseline=<optimized out>) at ../gtk/gtkoverlaylayout.c:402
#24 0x00007ffff794521d in gtk_widget_allocate (widget=widget@entry=0x5555558e1140, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x555556faf620) at ../gtk/gtkwidget.c:4071
#25 0x00007ffff7945744 in gtk_widget_size_allocate (widget=widget@entry=0x5555558e1140, allocation=allocation@entry=0x7fffffffd910, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#26 0x00007ffff7957de0 in gtk_window_size_allocate (widget=<optimized out>, width=1514, height=923, baseline=<optimized out>) at ../gtk/gtkwindow.c:5061
#27 0x00007ffff77585b6 in gtk_application_window_real_size_allocate (widget=0x5555558d8340, width=1514, height=923, baseline=-1) at ../gtk/gtkapplicationwindow.c:599
#28 0x00007ffff7406802 in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#29 0x00007ffff741a922 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#30 0x00007ffff7425b6e in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#31 0x00007ffff74260a3 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#32 0x00007ffff79456dc in gtk_widget_allocate (widget=widget@entry=0x5555558d8340, width=<optimized out>, height=<optimized out>, baseline=baseline@entry=-1, transform=0x0) at ../gtk/gtkwidget.c:4079
#33 0x00007ffff7945744 in gtk_widget_size_allocate (widget=widget@entry=0x5555558d8340, allocation=allocation@entry=0x7fffffffdff0, baseline=baseline@entry=-1) at ../gtk/gtkwidget.c:3806
#34 0x00007ffff79583db in gtk_window_move_resize (window=<optimized out>) at ../gtk/gtkwindow.c:6459
#35 0x00007ffff79583db in gtk_window_check_resize (self=<optimized out>) at ../gtk/gtkwindow.c:5442
#36 0x00007ffff787cba8 in gtk_root_layout_cb (clock=0x555555b69100, self=0x5555558d8340) at ../gtk/gtknative.h:35
#37 0x00007ffff7406a56 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#38 0x00007ffff7425af8 in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#39 0x00007ffff74260a3 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#40 0x00007ffff7a5c6f0 in _gdk_frame_clock_emit_layout (frame_clock=<optimized out>) at ../gdk/gdkframeclock.c:675
#41 0x00007ffff7ab0d27 in gdk_frame_clock_paint_idle (data=<optimized out>) at ../gdk/gdkframeclockidle.c:430
#42 0x00007ffff7ef1768 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007ffff7ef0bce in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007ffff7ef0f80 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007ffff7ef1023 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#46 0x00007ffff7539cd5 in g_application_run () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#47 0x000055555556f14e in main (argc=2, argv=0x7fffffffe6c8) at ../src/main.c:41