Hello, I've encountered this problem (long delay when changing directories with <tab>) on RedHat 9 with mc 4.6.0. I'm appending relevant part of "strace -t mc". Maybe it helps. The name of new direcotry is taken from (or to) subshell by one character. I don't know if it is result of quoting commands. Regards, Michal On Saturday 19 of October 2002 00:46, Pavel Roskin wrote:
Hello!I can start to see the slowdown on 5 to 6 directories, and it appears that the longer the directory name is and the further down in the subdirectory level you are, the worse the slowdown becomes.I could reproduce the problem, and it seems that it's only the length of the path that matters, not the number of directories (I actually tried /a/a/a/a/... the first time). The problem can be reproduced with bash and zsh, but not with tcsh. There is no delay changing directory in mc if the subshell is busy (i.e. you switch by Ctrl-O from a subshell that is running something). There is no delay when doing cd back and forth in the active subshell (i.e. you switch to the subshell by Ctrl-O). Most interesting, there is no delay when executing commands with active panels. The problem only exists when mc changes the directory in the subshell itself. Look for yourself - "\cd .." executes faster than "cd .."! I think it's the result of overly paranoid quoting in subshell_name_quote(), file src/subshell.c. If I disable quoting, changing directories speeds up significantly. In many cases, quoting of the directory name is not necessary. Sorry, I never expected paranoid quoting to be a performance issue. I'm adding it to the TODO list. Thank you for reporting the problem!
Attachment:
mc.strace
Description: Text document