[Xfce-bugs] [Bug 14281] Segmentation fault whenever dialogue appears for more than ~1 second

bugzilla-daemon at xfce.org bugzilla-daemon at xfce.org
Sat Mar 17 22:14:00 CET 2018


https://bugzilla.xfce.org/show_bug.cgi?id=14281

--- Comment #11 from Andre Miranda <andreldm at xfce.org> ---
Created attachment 7642
  --> https://bugzilla.xfce.org/attachment.cgi?id=7642&action=edit
patch

I was finally able to reproduce the bug after many attempts. However, I found
an easier way to force the crash: keep switching between the target folder and
its parent, Thunar will certainly crash.

These are the warnings messages it normally emits before crashing (not in this
order):
(thunar:4043): GLib-GObject-WARNING **: invalid cast from 'GtkCssImageBuiltin'
to 'ThunarFolder'
(thunar:4244): GLib-GObject-WARNING **: invalid cast from 'GtkCssTransition' to
'ThunarFolder'
(thunar:4170): GLib-GObject-WARNING **: invalid uninstantiatable type '(null)'
in cast to 'ThunarFolder'
(thunar:4170): thunar-WARNING **: Content type loading failed for 370: Error
when getting information for file “/tmp/tmp.KJj2GZa3j3/foo/370”: No such file
or directory

And this is the backtrace (sometimes it segfaults at line 424):
#0  0x000055555559f2a9 in thunar_folder_content_type_loader_idle
(data=<optimized out>) at thunar-folder.c:429
#1  0x00007ffff4c80ca6 in g_main_context_dispatch () at
/usr/lib/libglib-2.0.so.0
#2  0x00007ffff4c81081 in  () at /usr/lib/libglib-2.0.so.0
#3  0x00007ffff4c8110e in g_main_context_iteration () at
/usr/lib/libglib-2.0.so.0
#4  0x00007ffff524696e in g_application_run () at /usr/lib/libgio-2.0.so.0
#5  0x000055555557ac8d in main (argc=2, argv=0x7fffffffe008) at main.c:165

My suspicion is that we're facing a race condition, where multiple threads are
moving files, meanwhile Thunar is trying to update its view and then it uses an
invalid reference to a folder.

I have prepared a patch that prevents crashes, but it acts on the problem
effects, not on the cause, so CRITICAL messages are emitted. I just ask that
you (Victor), if possible, could test it so we are sure to be on the right
track.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Xfce-bugs mailing list