Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Bang completion kills zsh in emacs process buffer
- X-seq: zsh-workers 19101
- From: "Dwight Shih" <d.shih@xxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxx
- Subject: Bang completion kills zsh in emacs process buffer
- Date: Fri, 19 Sep 2003 10:38:19 -0500
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
I understand why the bug occurs, but it's been 4 or 5 years since I've
been inside the zsh code and I'm unclear on the best way to correct the
problem.
Here's the environment:
Mac OS X 10.2.6
zsh-4.1.1
emacs 21.3.50
My emacs was built from CVS sources on 17 August, as the Mac OS X
windows
support not yet available in an official distribution. However, it looks
like this could happen in any version of emacs running with native
windows support.
To reproduce:
start emacs
M-x shell #if necessary M-x customize-variable
explicit-shell-file-name to zsh binary
$ pwd
$ echo !$ #zsh will now die
In the debugger, zsh dies at hist.c:1092 trying to do a zputs(prt,shout)
because the file pointer shout is null.
As best I can tell, shout is normally initialized in init_shout, called
from init_io at init.c:452. Walking through init_io, SHTTY never gets
opened because the shell doesn't seem to be running in a tty (I would
expect this to be true in any windowed emacs). So when it comes time to
call init_shout, we conclude that since we're not using a tty, we're not
going to need shout.
I would appreciate it if someone who understood the logic behind
interactive and non-interactive shells and the file pointers involved
would take a look and tell me whether it's better to always set shout in
init_io (either by direct assignment to stdout or dup) or test for
shout==null in hist.c
Thanks,
Dwight Shih
Messages sorted by:
Reverse Date,
Date,
Thread,
Author