"Extract Here" action while extracting .rar files causes Thunar to crash
- thunar version 4.18.8-1~bpo12+1
- thunar-archive-plugin version 0.5.0-1
- libthunarx-3-0 4.18.8-1~bpo12+
- Debian Bookworm/12
I had been using 4.18.4 as provided by the distro when initially encountering these crashes. @unit193(in IRC) provided me with an "unofficial" backport of 4.18.8 for additional testing. The crashes continue to occur, roughly, about every 1/10 times while extracting single and/or multiple .rar files at the same time. The .rar files will vary in size from ~8MB upwards to ~800MB.
Below is a backtrace I gathered:
~/$ gdb -batch -n -ex 'set pagination off' -ex run -ex bt -ex 'bt full' -ex 'thread apply all bt full' --args thunar
Thread 1 "thunar" received signal SIGSEGV, Segmentation fault.
0x00007ffff7165783 in g_type_check_instance_cast () from /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#0 0x00007ffff7165783 in g_type_check_instance_cast () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#1 0x00007ffff428b750 in () at /usr/lib/x86_64-linux-gnu/thunarx-3/thunar-archive-plugin.so
#2 0x00007ffff7044a29 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff7044f0f in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff7048710 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff7048a38 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff7048acc in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff726865d in g_application_run () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#8 0x000055555557fe79 in main (argc=1, argv=0x7fffffffd678) at ./thunar/main.c:86
#0 0x00007ffff7165783 in g_type_check_instance_cast () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#1 0x00007ffff428b750 in () at /usr/lib/x86_64-linux-gnu/thunarx-3/thunar-archive-plugin.so
#2 0x00007ffff7044a29 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff7044f0f in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff7048710 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff7048a38 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff7048acc in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff726865d in g_application_run () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#8 0x000055555557fe79 in main (argc=1, argv=0x7fffffffd678) at ./thunar/main.c:86
application = 0x5555556771f0
error = 0x0
Thread 3 (Thread 0x7ffff4ffe6c0 (LWP 127562) "gdbus"):
#0 0x00007ffff6f0f05f in __GI___poll (fds=0x555555a22320, nfds=4, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
sc_ret = -516
sc_cancel_oldtype = 0
#1 0x00007ffff70489ae in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff7048cef in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff72a38f6 in () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff7072cfd in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff6e9c044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
ret = <optimized out>
pd = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737303799488, 6230470727135814944, -128, 0, 140737488343440, 140737295409152, -6230450936881978080, -6230455417703209696}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#6 0x00007ffff6f1c61c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
Thread 2 (Thread 0x7ffff57ff6c0 (LWP 127561) "gmain"):
#0 0x00007ffff6f0f05f in __GI___poll (fds=0x55555564f250, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
sc_ret = -516
sc_cancel_oldtype = 0
#1 0x00007ffff70489ae in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff7048acc in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff7048b11 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff7072cfd in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff6e9c044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
ret = <optimized out>
pd = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737312192192, 6230470727135814944, -128, 2, 140737488343056, 140737303801856, -6230449835759737568, -6230455417703209696}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#6 0x00007ffff6f1c61c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
Thread 1 (Thread 0x7ffff6216ac0 (LWP 127558) "thunar"):
#0 0x00007ffff7165783 in g_type_check_instance_cast () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#1 0x00007ffff428b750 in () at /usr/lib/x86_64-linux-gnu/thunarx-3/thunar-archive-plugin.so
#2 0x00007ffff7044a29 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff7044f0f in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff7048710 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff7048a38 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007ffff7048acc in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff726865d in g_application_run () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#8 0x000055555557fe79 in main (argc=1, argv=0x7fffffffd678) at ./thunar/main.c:86
application = 0x5555556771f0
error = 0x0
Let me know if you need additional information from me. Thanks!