On 8/11/11 10:35 AM, Martin von Gagern wrote:
> Hi Chet,
> 
> thanks for the swift reply!
> 
> On 11.08.2011 15:54, Chet Ramey wrote:
>> I suspect that you have a completion defined for `ls' and it's running a
>> command or process substitution that's causing the mail check.  Can you
>> run `set -x', then attempt the completion again and post the results?
> 
> Yes, there is a completion function for ls coming from the _longopt
> function from the bash-completion project at debian:
> http://anonscm.debian.org/gitweb/?p=bash-completion/bash-completion.git;a=blob;f=bash_completion;h=66019379fe1e9ef9b1010bff53a0dc1baf4e73d9;hb=7c81ef895455d0f7543c65789ff62808e7465578#l1540
> 
> With -x enabled, I see several subprocess lines, i.e. lines indented by
> two + instead of one. Some triggered by eval, others by $(...).
> 
> I wonder why this breaks things. After all, those subshells should never
> print a prompt, should never even look for interactive input. But I take
> it you've got your reasons to suspect them. Can this be fixed?

It's hard to say without a better idea of the problem.  I suspected either
eval or command substitution because they cause re-entry into the shell
parser.  I don't suspect command substitution because that explicitly turns
off interactive mode, but eval does not.  I'll see if I can run something
simple to reproduce it.

Chet
-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    c...@case.edu    http://cnswww.cns.cwru.edu/~chet/

Reply via email to