#944205 spacefm: 100% cpu when creating files/folders

Package:
spacefm
Source:
spacefm
Description:
Multi-panel tabbed file manager - GTK2 version
Submitter:
Jack Barns
Date:
2019-12-14 22:45:04 UTC
Severity:
normal
#944205#5
Date:
2019-11-05 21:04:03 UTC
From:
To:
Dear Maintainer,

Different characters and symbols in folder names will freeze and spike
the cpu usage to 100% for spacefm. The only change I can see is that a
horizontal bar gets added to the path field. (To see the horizontal
bar do steps: 1, 2.5 but don't go inside
"l_daacc_this_iz_am_tomiio_oww_-Ro" instead: Right click on it >
Rename and look at the path field.)

Some characters are interchangeable in the folder name:
a = o, u, e
d = q, b, v
_ = z, L, c

In the quick testing I did, the following symbols seem to be needed
to "push" it so it not only wraps (in the path field) but also gets
the horizontal bar:
-, w, #, ^, [, ], (, ), !

Steps to reproduce:
1. Create this folder path and cd into atatlza:
/home/jack/Downloads/abcdef_gh_1234a/123/atatlza/

2. Right click > New > Folder and paste the following:
l_daacc_this_iz_am_tomiio_oww_-Ro

You should notice that spacefm has frozen and top/htop report it
using 100% cpu.

Alternatively you can paste the full folder path into the path field
and see the same results.
/home/jack/Downloads/abcdef_gh_1234a/123/atatlza/l_daacc_this_iz_am_tomiio_oww_-Ro

2.5. Making the folder elsewhere and moving it in:
Make the "l_daacc_this_iz_am_tomiio_oww_-Ro" folder then move it
inside atatlza. Go inside and Right click > New > Folder and get the
same results as step 2.

#944205#10
Date:
2019-12-11 13:55:03 UTC
From:
To:
Hello Jack Barns,
I am not involved in packaging spacefm, but just tried
to reproduce the issue. "Unfortunately" for my test it
did not freeze.

If you still can reproduce it, maybe you can execute
following command while a single spacefm process is in
the system and hangs:

    script -a "spacefm-gdb_$(date +%Y-%m-%d_%H-%M-%S).txt" -c "ps -C spacefm -mo %cpu,pid,tid,user,args; gdb -q --pid $(pidof spacefm) -ex 'set width 0' -ex 'set pagination off' -ex 'thread apply all bt full' -ex 'detach' -ex 'quit'"

This should generate a file spacefm-gdb*.txt which could be
forwarded to this bug.

Even better if the dbgsym packages could be installed before,
like described in [1].

   spacefm-dbgsym libgtk2.0-0-dbgsym libglib2.0-0-dbgsym

Kind regards,
Bernhard

[1] https://wiki.debian.org/HowToGetABacktrace#Installing_the_debugging_symbols

#944205#15
Date:
2019-12-14 22:43:55 UTC
From:
To:
Dear Maintainer,

Hello, thank you for looking into this.
I can still reproduce the issue from a fresh install by not choosing
any desktop environment (only selecting "standard system utilities"
during the install) and downloading just a window manager. I have
tested cwm and openbox, which both freeze and get 100% cpu.
This is cwm's gdb output [1] and this is openbox's gdb output [2].

And in case it matters here is a list of the package's I had installed
for both in order: sudo xinit spacefm firefox cwm|openbox gdb
spacefm-dbgsym libgtk2.0-0-dbgsym libglib2.0-0-dbgsym.

[1] https://paste.debian.net/1121108/
[2] https://paste.debian.net/1121109/