! 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 1.6.3 segfaults randomly
Status:
RESOLVED: FIXED

Comments

Description Eric 2014-03-16 19:12:15 CET
Steps to reproduce the crash :
- Lauch Thunar
- Wait for it to crash or use it, but you may encounter loss of data if it segfaults.

Here is a backtrace :

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff4dd5697 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
(gdb) backtrace
#0  0x00007ffff4dd5697 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#1  0x00007ffff4dd8f23 in g_string_sized_new () from /usr/lib/libglib-2.0.so.0
#2  0x00007ffff4de84c7 in g_utf8_collate_key_for_filename ()
   from /usr/lib/libglib-2.0.so.0
#3  0x00000000004314a8 in thunar_file_info_reload (
    file=file@entry=0x7fffd4015da0, cancellable=cancellable@entry=0x0)
    at thunar-file.c:941
#4  0x00000000004318c1 in thunar_file_load (file=file@entry=0x7fffd4015da0, 
    error=error@entry=0x0, cancellable=0x0) at thunar-file.c:1060
#5  0x0000000000433003 in thunar_file_reload (file=0x7fffd4015da0)
    at thunar-file.c:3744
#6  0x00000000004343ef in thunar_folder_monitor (monitor=<optimized out>, 
    event_file=0x923740, other_file=<optimized out>, 
    event_type=G_FILE_MONITOR_EVENT_CHANGED, user_data=0x8dd460)
    at thunar-folder.c:749
#7  0x00007ffff057dd8c in ffi_call_unix64 () from /usr/lib/libffi.so.6
#8  0x00007ffff057d6bc in ffi_call () from /usr/lib/libffi.so.6
#9  0x00007ffff5082df5 in g_cclosure_marshal_generic_va ()
   from /usr/lib/libgobject-2.0.so.0
#10 0x00007ffff5082387 in ?? () from /usr/lib/libgobject-2.0.so.0
#11 0x00007ffff509ae18 in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#12 0x00007ffff509ba72 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#13 0x00007ffff5313af1 in ?? () from /usr/lib/libgio-2.0.so.0
#14 0x00007ffff4dba0e6 in g_main_context_dispatch ()
   from /usr/lib/libglib-2.0.so.0
#15 0x00007ffff4dba438 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007ffff4dba83a in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#17 0x00007ffff6c459d7 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#18 0x000000000041eb66 in main (argc=1, argv=0x7fffffffe7a8) at main.c:310
(gdb) 

Thank you,

Eric
Comment 1 Eric 2014-03-17 13:05:26 CET
Other backtrace, with G_SLICE=debug-blocks

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff4dd5697 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
(gdb) backtrace
#0  0x00007ffff4dd5697 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#1  0x00007ffff4dd8f23 in g_string_sized_new () from /usr/lib/libglib-2.0.so.0
#2  0x00007ffff4da7453 in ?? () from /usr/lib/libglib-2.0.so.0
#3  0x00007ffff4da87a8 in g_build_filename () from /usr/lib/libglib-2.0.so.0
#4  0x00007fffe9d1ad6c in ?? () from /usr/lib/gio/modules/libgvfsdbus.so
#5  0x00007fffe9d1ad4f in ?? () from /usr/lib/gio/modules/libgvfsdbus.so
#6  0x00007fffe9d1d241 in ?? () from /usr/lib/gio/modules/libgvfsdbus.so
#7  0x00007fffe9d0856b in ?? () from /usr/lib/gio/modules/libgvfsdbus.so
#8  0x00007ffff53a3fa4 in ?? () from /usr/lib/libgio-2.0.so.0
#9  0x00007ffff539f977 in ?? () from /usr/lib/libgio-2.0.so.0
#10 0x00000000004318b3 in thunar_file_load (file=file@entry=0x7fffd4017e20, 
    error=error@entry=0x0, cancellable=0x0) at thunar-file.c:1054
#11 0x0000000000433003 in thunar_file_reload (file=0x7fffd4017e20)
    at thunar-file.c:3744
#12 0x00000000004343ef in thunar_folder_monitor (monitor=<optimized out>, 
    event_file=0x7fffdc015520, other_file=<optimized out>, 
    event_type=G_FILE_MONITOR_EVENT_CHANGED, user_data=0x9010c0)
    at thunar-folder.c:749
#13 0x00007ffff057dd8c in ffi_call_unix64 () from /usr/lib/libffi.so.6
#14 0x00007ffff057d6bc in ffi_call () from /usr/lib/libffi.so.6
#15 0x00007ffff5082df5 in g_cclosure_marshal_generic_va ()
   from /usr/lib/libgobject-2.0.so.0
#16 0x00007ffff5082387 in ?? () from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#17 0x00007ffff509ae18 in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#18 0x00007ffff509ba72 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#19 0x00007ffff5313af1 in ?? () from /usr/lib/libgio-2.0.so.0
#20 0x00007ffff4dba0e6 in g_main_context_dispatch ()
   from /usr/lib/libglib-2.0.so.0
#21 0x00007ffff4dba438 in ?? () from /usr/lib/libglib-2.0.so.0
#22 0x00007ffff4dba83a in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#23 0x00007ffff6c459d7 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#24 0x000000000041eb66 in main (argc=1, argv=0x7fffffffe788) at main.c:310
(gdb) 

Thanks,

Eric
Comment 2 Andrzej editbugs 2014-03-17 20:58:48 CET
Just a guess, can you post/check a result of:
$ ldd `which thunar`

Last time I have seen "weird" thunar crashes they were caused by two different versions of libraries (afair some plugins) linked together. Watch for any suspicious path differences.
Comment 3 Eric 2014-03-18 08:22:15 CET
Thanks for your help. Here it is : 

ldd `which thunar`
	linux-vdso.so.1 (0x00007fffdd3fe000)
	libthunarx-2.so.0 => /usr/lib/libthunarx-2.so.0 (0x00007ffec4b1b000)
	libexo-1.so.0 => /usr/lib/libexo-1.so.0 (0x00007ffec48d6000)
	libgudev-1.0.so.0 => /usr/lib/libgudev-1.0.so.0 (0x00007ffec4f18000)
	libnotify.so.4 => /usr/lib/libnotify.so.4 (0x00007ffec46ce000)
	libSM.so.6 => /usr/lib/libSM.so.6 (0x00007ffec44c6000)
	libICE.so.6 => /usr/lib/libICE.so.6 (0x00007ffec42aa000)
	libxfce4ui-1.so.0 => /usr/lib/libxfce4ui-1.so.0 (0x00007ffec4098000)
	libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x00007ffec3a65000)
	libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00007ffec37b2000)
	libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x00007ffec358f000)
	libcairo.so.2 => /usr/lib/libcairo.so.2 (0x00007ffec326d000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x00007ffec3049000)
	libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00007ffec2dfe000)
	libxfce4util.so.6 => /usr/lib/libxfce4util.so.6 (0x00007ffec2bef000)
	libxfconf-0.so.2 => /usr/lib/libxfconf-0.so.2 (0x00007ffec29dc000)
	libdbus-glib-1.so.2 => /usr/lib/libdbus-glib-1.so.2 (0x00007ffec27b5000)
	libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00007ffec256d000)
	libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00007ffec220c000)
	libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007ffec1fbc000)
	libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007ffec1cbc000)
	libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007ffec1a9f000)
	libc.so.6 => /usr/lib/libc.so.6 (0x00007ffec16f7000)
	libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00007ffec14f3000)
	libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00007ffec12e6000)
	libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00007ffec10d1000)
	libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00007ffec0e95000)
	libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007ffec0bec000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0x00007ffec08b1000)
	libm.so.6 => /usr/lib/libm.so.6 (0x00007ffec05b0000)
	libudev.so.1 => /usr/lib/libudev.so.1 (0x00007ffec4eff000)
	librt.so.1 => /usr/lib/librt.so.1 (0x00007ffec03a8000)
	libdl.so.2 => /usr/lib/libdl.so.2 (0x00007ffec01a4000)
	libuuid.so.1 => /usr/lib/libuuid.so.1 (0x00007ffebff9f000)
	libstartup-notification-1.so.0 => /usr/lib/libstartup-notification-1.so.0 (0x00007ffebfd95000)
	libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007ffebfb8f000)
	libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007ffebf985000)
	libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00007ffebf782000)
	libXi.so.6 => /usr/lib/libXi.so.6 (0x00007ffebf572000)
	libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00007ffebf368000)
	libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00007ffebf15d000)
	libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00007ffebef5a000)
	libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00007ffebed57000)
	libXext.so.6 => /usr/lib/libXext.so.6 (0x00007ffebeb45000)
	libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x00007ffebe89a000)
	libEGL.so.1 => /usr/lib/libEGL.so.1 (0x00007ffebe677000)
	libpng16.so.16 => /usr/lib/libpng16.so.16 (0x00007ffebe442000)
	libxcb-shm.so.0 => /usr/lib/libxcb-shm.so.0 (0x00007ffebe23f000)
	libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x00007ffebe035000)
	libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007ffebde15000)
	libz.so.1 => /usr/lib/libz.so.1 (0x00007ffebdbff000)
	libGL.so.1 => /usr/lib/libGL.so.1 (0x00007ffebd8cc000)
	libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00007ffebd6ca000)
	libffi.so.6 => /usr/lib/libffi.so.6 (0x00007ffebd4c2000)
	libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00007ffebd25b000)
	libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007ffebd044000)
	/lib64/ld-linux-x86-64.so.2 (0x00007ffec4d26000)
	libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 (0x00007ffebcdee000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007ffebcbc4000)
	libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007ffebc9b4000)
	libxcb-util.so.1 => /usr/lib/libxcb-util.so.1 (0x00007ffebc7af000)
	libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007ffebc5ad000)
	libxcb-dri2.so.0 => /usr/lib/libxcb-dri2.so.0 (0x00007ffebc3a8000)
	libxcb-xfixes.so.0 => /usr/lib/libxcb-xfixes.so.0 (0x00007ffebc1a1000)
	libxcb-shape.so.0 => /usr/lib/libxcb-shape.so.0 (0x00007ffebbf9d000)
	libgbm.so.1 => /usr/lib/libgbm.so.1 (0x00007ffebbd95000)
	libwayland-client.so.0 => /usr/lib/libwayland-client.so.0 (0x00007ffebbb87000)
	libwayland-server.so.0 => /usr/lib/libwayland-server.so.0 (0x00007ffebb976000)
	libglapi.so.0 => /usr/lib/libglapi.so.0 (0x00007ffebb74f000)
	libdrm.so.2 => /usr/lib/libdrm.so.2 (0x00007ffebb543000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0x00007ffebb33f000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007ffebb139000)
	libnvidia-tls.so.331.49 => /usr/lib/libnvidia-tls.so.331.49 (0x00007ffebaf36000)
	libnvidia-glcore.so.331.49 => /usr/lib/libnvidia-glcore.so.331.49 (0x00007ffeb8727000)
	libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 (0x00007ffeb8509000)
Comment 4 Eric 2014-03-21 14:17:31 CET
Another Thunar crash backtrace, with interesting line #8 :

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff4dd5697 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
(gdb) backtrace
#0  0x00007ffff4dd5697 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#1  0x00007ffff4dd8f23 in g_string_sized_new () from /usr/lib/libglib-2.0.so.0
#2  0x00007ffff4da7453 in ?? () from /usr/lib/libglib-2.0.so.0
#3  0x00007ffff4da87a8 in g_build_filename () from /usr/lib/libglib-2.0.so.0
#4  0x00007fffe9d1d297 in ?? () from /usr/lib/gio/modules/libgvfsdbus.so
#5  0x00007fffe9d0856b in ?? () from /usr/lib/gio/modules/libgvfsdbus.so
#6  0x00007ffff53a3fa4 in ?? () from /usr/lib/libgio-2.0.so.0
#7  0x00007ffff539f977 in ?? () from /usr/lib/libgio-2.0.so.0
#8  0x0000000000431963 in thunar_file_load (file=file@entry=0x7fffd401dc30, 
    error=error@entry=0x0, cancellable=0x0) at thunar-file.c:1054
#9  0x00000000004330b3 in thunar_file_reload (file=0x7fffd401dc30)
    at thunar-file.c:3744
#10 0x000000000043449f in thunar_folder_monitor (monitor=<optimized out>, 
    event_file=0x951440, other_file=<optimized out>, 
    event_type=G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT, user_data=0x81f300)
    at thunar-folder.c:749
#11 0x00007ffff057dd8c in ffi_call_unix64 () from /usr/lib/libffi.so.6
#12 0x00007ffff057d6bc in ffi_call () from /usr/lib/libffi.so.6
#13 0x00007ffff5082df5 in g_cclosure_marshal_generic_va ()
   from /usr/lib/libgobject-2.0.so.0
#14 0x00007ffff5082387 in ?? () from /usr/lib/libgobject-2.0.so.0
#15 0x00007ffff509ae18 in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#16 0x00007ffff509ba72 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#17 0x00007ffff5313af1 in ?? () from /usr/lib/libgio-2.0.so.0
#18 0x00007ffff4dba0e6 in g_main_context_dispatch ()
   from /usr/lib/libglib-2.0.so.0
#19 0x00007ffff4dba438 in ?? () from /usr/lib/libglib-2.0.so.0
#20 0x00007ffff4dba83a in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#21 0x00007ffff6c459d7 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#22 0x000000000041ec16 in main (argc=1, argv=0x7fffffffe7a8) at main.c:310

Here is the code in thunar-file.c next to this :

1045   _thunar_return_val_if_fail (THUNAR_IS_FILE (file), FALSE);
1046   _thunar_return_val_if_fail (error == NULL || *error == NULL, FALSE);
1047   _thunar_return_val_if_fail (cancellable == NULL || G_IS_CANCELLABLE (canc     ellable), FALSE);
1048   _thunar_return_val_if_fail (G_IS_FILE (file->gfile), FALSE);
1049 
1050   /* reset the file */
1051   thunar_file_info_clear (file);
1052 
1053   /* query a new file info */
1054   file->info = g_file_query_info (file->gfile,
1055                                   THUNARX_FILE_INFO_NAMESPACE,
1056                                   G_FILE_QUERY_INFO_NONE,
1057                                   cancellable, &err);
1058 
1059   /* update the file from the information */
1060   thunar_file_info_reload (file, cancellable);
1061
Comment 5 Eric 2014-03-24 17:54:16 CET
After a week of research, the segfault was caused by my conky.

Changing my conky files made just the bug disappear.

Bug #10753

Reported by:
Eric
Reported on: 2014-03-16
Last modified on: 2014-03-24

People

Assignee:
Jannis Pohlmann
CC List:
2 users

Version

Attachments

Additional information