Skip to content

NULL pointer dereference at thunar_file_get_display_name

I'm on Thunar 4.18.3. I can trigger the bug by opening a directory in Thunar and adding and removing files for a while, the crash then happens when trying to open or rename a file.

Thread 1 "thunar" received signal SIGSEGV, Segmentation fault.
thunar_file_get_display_name (file=file@entry=0x0) at thunar-file.c:3303
3303	  return file->display_name;
(gdb) bt
#0  thunar_file_get_display_name (file=file@entry=0x0) at thunar-file.c:3303
#1  0x0000558de16a67b5 in thunar_list_model_get_value (model=0x558de20ef8c0, iter=<optimized out>, column=8, value=0x7fffdceb0900)
    at thunar-list-model.c:1054
#2  0x00007f898c81e85f in gtk_tree_model_filter_real_modify
    (self=0x558de252d6e0 [GtkTreeModelFilter], child_model=0x558de20ef8c0, iter=0x558de1f5a2a0, value=0x7fffdceb0900, column=8)
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtktreemodelfilter.c:3156
#3  0x00007f898c600d00 in apply_cell_attributes
    (renderer=0x558de1dec5d0 [GtkCellRendererText], info=0x558de20e9950, data=0x7fffdceb0990)
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtkcellarea.c:1249
#4  0x00007f898be575f0 in g_hash_table_foreach
    (hash_table=0x558de2058400 = {...}, func=func@entry=0x7f898c600c30 <apply_cell_attributes>, user_data=user_data@entry=0x7fffdceb0990) at ../glib-2.74.4/glib/ghash.c:2098
#5  0x00007f898c600bdb in gtk_cell_area_real_apply_attributes
    (area=<optimized out>, tree_model=0x558de252d6e0, iter=0x558de1f5a2a0, is_expander=<optimized out>, is_expanded=<optimized out>)
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtkcellarea.c:1286
#6  0x00007f898c60635b in gtk_cell_area_box_apply_attributes
    (area=<optimized out>, tree_model=tree_model@entry=0x558de252d6e0, iter=iter@entry=0x558de1f5a2a0, is_expander=<optimized out>, is_expanded=<optimized out>) at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtkcellareabox.c:1310
#7  0x00007f898c8af559 in _gtk_marshal_VOID__OBJECT_BOXED_BOOLEAN_BOOLEANv
    (closure=0x558de1f36e10, return_value=<optimized out>, instance=0x558de1ed2620, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x558de1f15320) at gtkmarshalers.c:5446
#8  0x00007f898bf677c1 in _g_closure_invoke_va
    (closure=closure@entry=0x558de1f36e10, return_value=return_value@entry=0x0, instance=instance@entry=0x558de1ed2620, args=args@entry=0x7fffdceb0c70, n_params=n_params@entry=4, param_types=0x558de1f15320) at ../glib-2.74.4/gobject/gclosure.c:895
#9  0x00007f898bf80eaf in g_signal_emit_valist
    (instance=0x558de1ed2620, signal_id=381, detail=<optimized out>, var_args=var_args@entry=0x7fffdceb0c70)
    at ../glib-2.74.4/gobject/gsignal.c:3456
#10 0x00007f898bf810f7 in g_signal_emit (instance=instance@entry=0x558de1ed2620, signal_id=<optimized out>, detail=detail@entry=0)
    at ../glib-2.74.4/gobject/gsignal.c:3606
#11 0x00007f898c602926 in gtk_cell_area_apply_attributes
    (area=0x558de1ed2620 [GtkCellAreaBox], tree_model=0x558de252d6e0, iter=iter@entry=0x7fffdceb0ef0, is_expander=0, is_expanded=0)
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtkcellarea.c:2373
#12 0x00007f898c84c3e6 in gtk_tree_view_column_cell_set_cell_data
    (tree_column=tree_column@entry=0x558de1ddc520 [GtkTreeViewColumn], tree_model=<optimized out>, iter=iter@entry=0x7fffdceb0ef0, is_expander=<optimized out>, is_expanded=<optimized out>) at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtktreeviewcolumn.c:2821
#13 0x00007f898c831547 in validate_row
    (tree_view=tree_view@entry=0x558de20b43c0 [GtkTreeView], tree=0x558de204c260, node=0x558de248fb80, iter=iter@entry=0x7fffdceb0ef0, path=path@entry=0x558de21e0000) at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtktreeview.c:6418
#14 0x00007f898c834d05 in validate_visible_area (tree_view=0x558de20b43c0 [GtkTreeView])
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtktreeview.c:6522
#15 do_presize_handler (tree_view=0x558de20b43c0 [GtkTreeView])
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtktreeview.c:7102
#16 0x00007f898c83ab75 in validate_rows (tree_view=0x558de20b43c0 [GtkTreeView])
    at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gtk/gtktreeview.c:7145
#17 0x00007f898c3f2d69 in gdk_threads_dispatch (data=0x558de1f556a0) at /usr/src/debug/x11-libs/gtk+-3.24.35/gtk+-3.24.35/gdk/gdk.c:769
#18 0x00007f898be69845 in g_main_dispatch (context=0x558de1d54980) at ../glib-2.74.4/glib/gmain.c:3454
#19 g_main_context_dispatch (context=0x558de1d54980) at ../glib-2.74.4/glib/gmain.c:4172
#20 0x00007f898be69be8 in g_main_context_iterate
    (context=context@entry=0x558de1d54980, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at ../glib-2.74.4/glib/gmain.c:4248
#21 0x00007f898be69c9f in g_main_context_iteration (context=context@entry=0x558de1d54980, may_block=may_block@entry=1)
    at ../glib-2.74.4/glib/gmain.c:4313
#22 0x00007f898c08e8ad in g_application_run
    (application=0x558de1d6d1e0 [ThunarApplication], argc=argc@entry=1, argv=argv@entry=0x7fffdceb1268)
    at ../glib-2.74.4/gio/gapplication.c:2573
#23 0x0000558de1667e62 in main (argc=1, argv=0x7fffdceb1268) at main.c:86