! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Thunar crashed on double clicking the address bar to highlight text
Status:
RESOLVED: MOVED

Comments

Description Hussam Al-Tayeb 2019-10-21 17:02:04 CEST
Thunar crashed on double clicking the address bar to highlight text. I am 90% positively sure that is what I a was doing.

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `Thunar --daemon'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  thunar_file_get_display_name (file=file@entry=0x0) at thunar-file.c:3180
3180	thunar-file.c: No such file or directory.
[Current thread is 1 (Thread 0x7fa78b2ea980 (LWP 1131))]
warning: File "/usr/lib/libstdc++.so.6.0.27-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /usr/lib/libstdc++.so.6.0.27-gdb.py
line to your configuration file "/home/hussam/.gdbinit".
--Type <RET> for more, q to quit, c to continue without paging--
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/hussam/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
(gdb) set logging on
Copying output to gdb.txt.
(gdb) thread apply all bt full

Thread 5 (Thread 0x7fa77bfff700 (LWP 36514)):
#0  0x00007fa78c4c38cf in poll () at /usr/lib/libc.so.6
#1  0x00007fa778c17c94 in  () at /usr/lib/libpulse.so.0
#2  0x00007fa778c25fa9 in pa_mainloop_poll () at /usr/lib/libpulse.so.0
#3  0x00007fa778c2f341 in pa_mainloop_iterate () at /usr/lib/libpulse.so.0
#4  0x00007fa778c2f3f1 in pa_mainloop_run () at /usr/lib/libpulse.so.0
#5  0x00007fa778c1f65e in  () at /usr/lib/libpulse.so.0
#6  0x00007fa778ba3f6c in  () at /usr/lib/pulseaudio/libpulsecommon-13.0.so
#7  0x00007fa78c0844cf in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007fa78c4cc393 in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7fa778819700 (LWP 1363)):
#0  0x00007fa78c4c38cf in poll () at /usr/lib/libc.so.6
#1  0x00007fa778c17c94 in  () at /usr/lib/libpulse.so.0
#2  0x00007fa778c25fa9 in pa_mainloop_poll () at /usr/lib/libpulse.so.0
#3  0x00007fa778c2f341 in pa_mainloop_iterate () at /usr/lib/libpulse.so.0
#4  0x00007fa778c2f3f1 in pa_mainloop_run () at /usr/lib/libpulse.so.0
#5  0x00007fa778c1f65e in  () at /usr/lib/libpulse.so.0
#6  0x00007fa778ba3f6c in  () at /usr/lib/pulseaudio/libpulsecommon-13.0.so
#7  0x00007fa78c0844cf in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007fa78c4cc393 in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7fa78aae8700 (LWP 1133)):
#0  0x00007fa78c4c38cf in poll () at /usr/lib/libc.so.6
#1  0x00007fa78c5ce170 in g_main_context_poll (priority=<optimized out>, n_fds=3, fds=0x7fa78401ac70, timeout=<optimized out>, context=0x55960f35ccd0) at ../glib/glib/gmain.c:4216
        ret = <optimized out>
        errsv = <optimized out>
        poll_func = 0x7fa78c5ba670 <g_poll>
        max_priority = 2147483647
        timeout = -1
        some_ready = <optimized out>
        nfds = 3
        allocated_nfds = <optimized out>
        fds = 0x7fa78401ac70
#2  0x00007fa78c5ce170 in g_main_context_iterate (context=0x55960f35ccd0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:3912
        max_priority = 2147483647
        timeout = -1
        some_ready = <optimized out>
        nfds = 3
        allocated_nfds = <optimized out>
        fds = 0x7fa78401ac70
#3  0x00007fa78c5cf113 in g_main_loop_run (loop=0x55960f35cdc0) at ../glib/glib/gmain.c:4111
        __FUNCTION__ = "g_main_loop_run"
#4  0x00007fa78c73cb98 in gdbus_shared_thread_func (user_data=0x7fa78401ac70) at ../glib/gio/gdbusprivate.c:278
        data = 0x7fa78401ac70
#5  0x00007fa78c5aac11 in g_thread_proxy (data=0x55960f3474a0) at ../glib/glib/gthread.c:805
        thread = 0x55960f3474a0
        __FUNCTION__ = "g_thread_proxy"
#6  0x00007fa78c0844cf in start_thread () at /usr/lib/libpthread.so.0
#7  0x00007fa78c4cc393 in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7fa78b2e9700 (LWP 1132)):
#0  0x00007fa78c4bf30c in read () at /usr/lib/libc.so.6
#1  0x00007fa78c57e9f0 in read (__nbytes=16, __buf=0x7fa78b2e8b50, __fd=<optimized out>, __fd=<optimized out>, __buf=<optimized out>, __nbytes=<optimized out>) at /usr/include/bits/unistd.h:44
        buffer = "\003\000\000\000\000\000\000\000\064\307\\\214\247\177\000"
#2  0x00007fa78c57e9f0 in g_wakeup_acknowledge (wakeup=0x55960f33dda0) at ../glib/glib/gwakeup.c:210
        buffer = "\003\000\000\000\000\000\000\000\064\307\\\214\247\177\000"
#3  0x00007fa78c5cca31 in g_main_context_check (context=context@entry=0x55960f3470f0, max_priority=2147483647, fds=fds@entry=0x55960f3435c0, n_fds=n_fds@entry=2) at ../glib/glib/gmain.c:3695
        source = 0x0
        iter = {context = 0x55960f3470f0, may_modify = 1, current_list = 0x0, source = 0x0}
        pollrec = <optimized out>
        n_ready = 0
--Type <RET> for more, q to quit, c to continue without paging--
        i = <optimized out>
#4  0x00007fa78c5ce118 in g_main_context_iterate (context=context@entry=0x55960f3470f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:3914
        max_priority = 2147483647
        timeout = 100
        some_ready = <optimized out>
        nfds = 2
        allocated_nfds = <optimized out>
        fds = 0x55960f3435c0
#5  0x00007fa78c5ce241 in g_main_context_iteration (context=0x55960f3470f0, may_block=may_block@entry=1) at ../glib/glib/gmain.c:3978
        retval = <optimized out>
#6  0x00007fa78c5ce292 in glib_worker_main (data=<optimized out>) at ../glib/glib/gmain.c:5858
#7  0x00007fa78c5aac11 in g_thread_proxy (data=0x55960f347400) at ../glib/glib/gthread.c:805
        thread = 0x55960f347400
        __FUNCTION__ = "g_thread_proxy"
#8  0x00007fa78c0844cf in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007fa78c4cc393 in clone () at /usr/lib/libc.so.6


Thread 1 (Thread 0x7fa78b2ea980 (LWP 1131)):
#0  0x000055960ec1b0f0 in thunar_file_get_display_name (file=file@entry=0x0) at thunar-file.c:3180
#1  0x000055960ec28ef7 in thunar_list_model_get_value (model=0x55960f4a6180, iter=<optimized out>, column=4, value=0x7ffcf2887230) at thunar-list-model.c:808
        group = <optimized out>
        content_type = <optimized out>
        name = <optimized out>
        real_name = <optimized out>
        user = <optimized out>
        file = 0x0
        str = <optimized out>
#2  0x00007fa78ccf1279 in gtk_tree_model_filter_real_modify (self=0x55960fd84b80 [GtkTreeModelFilter], child_model=0x55960f4a6180, iter=0x55960facb540, value=0x7ffcf2887230, column=4) at ../gtk/gtk/gtktreemodelfilter.c:3156
        child_iter = {stamp = 0, user_data = 0x7fa78409d230, user_data2 = 0x0, user_data3 = 0x0}
        __func__ = "gtk_tree_model_filter_real_modify"
#3  0x00007fa78cf04b99 in apply_cell_attributes (renderer=0x55960f438380 [GtkCellRendererText], info=0x55960f803920, data=0x7ffcf28872c0) at ../gtk/gtk/gtkcellarea.c:1249
        attribute = 0x55960f889380
        list = 0x55960f889390 = {0x55960f889380}
        value = {g_type = 0x40, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        is_expander = 0
        is_expanded = 0
#4  0x00007fa78c5dbae0 in g_hash_table_foreach (hash_table=0x55960f858240 = {...}, func=0x7fa78cf04ac0 <apply_cell_attributes>, user_data=0x7ffcf28872c0) at ../glib/glib/ghash.c:2056
        node_hash = <optimized out>
        node_key = <optimized out>
        node_value = <optimized out>
        i = 5
        version = 2
        __FUNCTION__ = "g_hash_table_foreach"
#5  0x00007fa78cf04a6c in gtk_cell_area_real_apply_attributes (area=<optimized out>, tree_model=0x55960fd84b80, iter=0x55960facb540, is_expander=<optimized out>, is_expanded=<optimized out>) at ../gtk/gtk/gtkcellarea.c:1286
        priv = 0x55960f742470
        data = {area = 0x55960f7424b0 [GtkCellAreaBox], model = 0x55960fd84b80, iter = 0x55960facb540, is_expander = 0, is_expanded = 0}
        path = <optimized out>
#6  0x00007fa78cefb7bb in gtk_cell_area_box_apply_attributes (area=area@entry=0x55960f7424b0 [GtkCellAreaBox], tree_model=tree_model@entry=0x55960fd84b80, iter=iter@entry=0x55960facb540, is_expander=<optimized out>, is_expanded=<optimized out>) at ../gtk/gtk/gtkcellareabox.c:1310
        box = 0x55960f7424b0 [GtkCellAreaBox]
        priv = 0x55960f742430
        i = <optimized out>
#7  0x00007fa78cf4d262 in _gtk_marshal_VOID__OBJECT_BOXED_BOOLEAN_BOOLEANv (closure=0x55960f842a00, return_value=<optimized out>, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x55960f842260) at gtk/gtkmarshalers.c:5447
        cc = 0x55960f842a00
        data1 = 0x55960f7424b0
        data2 = <optimized out>
        callback = 0x7fa78cefb7a0 <gtk_cell_area_box_apply_attributes>
        arg0 = 0x55960fd84b80
        arg1 = 0x55960facb540
        arg2 = -1940547072
        arg3 = 255016980
--Type <RET> for more, q to quit, c to continue without paging--
        args_copy = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7ffcf2887638, reg_save_area = 0x7ffcf2887570}}
#8  0x00007fa78c6aab4a in _g_closure_invoke_va (param_types=0x55960f842260, n_params=<optimized out>, args=0x7ffcf2887550, instance=0x55960f7424b0, return_value=0x0, closure=0x55960f842a00) at ../glib/gobject/gclosure.c:873
        marshal = <optimized out>
        marshal_data = <optimized out>
        in_marshal = 0
        real_closure = 0x55960f8429e0
        return_accu = <optimized out>
        accu = {g_type = 0x0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        accumulator = 0x0
        emission = {next = 0x0, instance = 0x55960f7424b0, ihint = {signal_id = 426, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 0x55960f842880 [GtkCellAreaBox/GtkCellArea/GInitiallyUnowned]}
        signal_id = 426
        instance_type = <optimized out>
        emission_return = {g_type = 0x0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        rtype = 0x4
        static_scope = 0
        fastpath_handler = <optimized out>
        closure = <optimized out>
        run_type = <optimized out>
        hlist = <optimized out>
        l = <optimized out>
        fastpath = 1
        instance_and_params = <optimized out>
        signal_return_type = <optimized out>
        param_values = <optimized out>
        node = <optimized out>
        i = <optimized out>
        n_params = <optimized out>
        __FUNCTION__ = "g_signal_emit_valist"
#9  0x00007fa78c6aab4a in g_signal_emit_valist (instance=0x55960f7424b0, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffcf2887550) at ../glib/gobject/gsignal.c:3306
        return_accu = <optimized out>
        accu = {g_type = 0x0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        accumulator = 0x0
        emission = {next = 0x0, instance = 0x55960f7424b0, ihint = {signal_id = 426, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 0x55960f842880 [GtkCellAreaBox/GtkCellArea/GInitiallyUnowned]}
        signal_id = 426
        instance_type = <optimized out>
        emission_return = {g_type = 0x0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        rtype = 0x4
        static_scope = 0
        fastpath_handler = <optimized out>
        closure = <optimized out>
        run_type = <optimized out>
        hlist = <optimized out>
        l = <optimized out>
        fastpath = 1
        instance_and_params = <optimized out>
        signal_return_type = <optimized out>
        param_values = <optimized out>
        node = <optimized out>
        i = <optimized out>
        n_params = <optimized out>
        __FUNCTION__ = "g_signal_emit_valist"
#10 0x00007fa78c6ab7f0 in g_signal_emit (instance=instance@entry=0x55960f7424b0, signal_id=<optimized out>, detail=detail@entry=0) at ../glib/gobject/gsignal.c:3453
        var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7ffcf2887630, reg_save_area = 0x7ffcf2887570}}
#11 0x00007fa78cf078d4 in gtk_cell_area_apply_attributes (area=0x55960f7424b0 [GtkCellAreaBox], tree_model=0x55960fd84b80, iter=0x7ffcf28877b0, is_expander=0, is_expanded=0) at ../gtk/gtk/gtkcellarea.c:2373
        __func__ = "gtk_cell_area_apply_attributes"
#12 0x00007fa78ccda628 in validate_row (tree_view=tree_view@entry=0x55960f780400 [GtkTreeView], tree=0x55960fd1df20, node=0x55960fc4e800, iter=iter@entry=0x7ffcf28877b0, path=path@entry=0x55960fd27200) at ../gtk/gtk/gtktreeview.c:6417
        padding = 0
        original_width = 0
        new_width = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--
        row_height = 21910
        column = 0x55960f89e670 [GtkTreeViewColumn]
        context = 0x55960f631240 [GtkStyleContext]
        list = 0x55960f494b20 = {0x55960f89e670}
        first_column = <optimized out>
        last_column = <optimized out>
        height = 0
        horizontal_separator = 4
        vertical_separator = 2
        depth = 1
        retval = 0
        is_separator = 0
        draw_vgrid_lines = 0
        draw_hgrid_lines = 0
        grid_line_width = 1
        expander_size = 18
#13 0x00007fa78ccdb3f7 in validate_visible_area (tree_view=0x55960f780400 [GtkTreeView]) at ../gtk/gtk/gtktreeview.c:6521
        iter = {stamp = -501003775, user_data = 0x55960fca3e70, user_data2 = 0x55960fd47d00, user_data3 = 0x0}
        need_redraw = 0
        allocation = {x = 0, y = 0, width = 786, height = 357}
        tree = 0x55960fd1df20
        node = 0x55960fc4e800
        total_height = <optimized out>
        path = 0x55960fd27200
        above_path = 0x0
        size_changed = 0
        area_above = 0
        area_below = 0
#14 0x00007fa78ccdb3f7 in do_presize_handler (tree_view=0x55960f780400 [GtkTreeView]) at ../gtk/gtk/gtktreeview.c:7101
#15 0x00007fa78cce03c5 in validate_rows (tree_view=0x55960f780400 [GtkTreeView]) at ../gtk/gtk/gtktreeview.c:7144
#16 0x00007fa78cb213cc in gdk_threads_dispatch (data=0x55960fd43980) at ../gtk/gdk/gdk.c:777
        dispatch = 0x55960fd43980
        ret = 0
#17 0x00007fa78c5cc2bf in g_main_dispatch (context=0x55960f3522d0) at ../glib/glib/gmain.c:3179
        dispatch = 0x7fa78c5c6d80 <g_idle_dispatch>
        prev_source = 0x0
        was_in_call = 0
        user_data = 0x55960fd43980
        callback = 0x7fa78cb213a0 <gdk_threads_dispatch>
        cb_funcs = 0x7fa78c685300 <g_source_callback_funcs>
        cb_data = 0x55960faf5cc0
        need_destroy = <optimized out>
        source = 0x55960fdb0d50
        current = 0x55960f35d380
        i = 0
#18 0x00007fa78c5cc2bf in g_main_context_dispatch (context=context@entry=0x55960f3522d0) at ../glib/glib/gmain.c:3844
#19 0x00007fa78c5ce201 in g_main_context_iterate (context=context@entry=0x55960f3522d0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:3917
        max_priority = 125
        timeout = 0
        some_ready = 1
        nfds = <optimized out>
        allocated_nfds = <optimized out>
        fds = 0x7fa7840467a0
#20 0x00007fa78c5ce241 in g_main_context_iteration (context=0x55960f3522d0, may_block=1) at ../glib/glib/gmain.c:3978
        retval = <optimized out>
#21 0x00007fa78c77fa2e in g_application_run (application=0x55960f36a0f0 [ThunarApplication], argc=<optimized out>, argv=<optimized out>) at ../glib/gio/gapplication.c:2550
        arguments = 0x55960f36e160
        status = 0
        context = 0x55960f3522d0
        acquired_context = 1
        __FUNCTION__ = "g_application_run"
#22 0x000055960ebfb0da in main (argc=2, argv=0x7ffcf2887af8) at main.c:93
        application = 0x55960f36a0f0 [ThunarApplication]
--Type <RET> for more, q to quit, c to continue without paging--
        error = 0x0
(gdb) quit
Comment 1 alexxcons editbugs 2019-10-21 22:20:35 CEST
Thanks for reporting !

>#0  0x000055960ec1b0f0 in thunar_file_get_display_name (file=file@entry=0x0) at thunar-file.c:3180
>#1  0x000055960ec28ef7 in thunar_list_model_get_value (model=0x55960f4a6180, iter=<optimized out>, column=4, >value=0x7ffcf2887230) at thunar-list-model.c:808
>        group = <optimized out>
>        content_type = <optimized out>
>        name = <optimized out>
>        real_name = <optimized out>
>        user = <optimized out>
>        file = 0x0

Not sure this is related to the address bar at all. Double clicking the text afaik does not trigger much.
To me it looks like some gtk tree-view node had corrupt data on it (file = 0x0) while beeing used.
Probably the related widgets are thunar-detail-view or thunar-tree-view .. you used one of these during the crash ?

In order to further debug that crash, a way to reproduce it is required.
Comment 2 Hussam Al-Tayeb 2019-10-21 23:01:10 CEST
I always use the the detail view since I have to work with a lot of documents and the modified date is something I monitor.

Clicking on the address bar was likely something I was doing at the time of the crash. But I had about 5 Thunar windows open so it may be something else I did.

Since this is happening frequently in my workflow, I'll try to narrow it down.
Comment 3 Git Bot editbugs 2020-05-26 23:46:18 CEST
-- GitLab Migration Automatic Message --

This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/xfce/thunar/-/issues/266.

Please create an account or use an existing account on one of our supported OAuth providers. 

If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests

Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev

Bug #16069

Reported by:
Hussam Al-Tayeb
Reported on: 2019-10-21
Last modified on: 2020-05-26

People

Assignee:
Xfce Bug Triage
CC List:
1 user

Version

Version:
unspecified

Attachments

Additional information