Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

ZSH/nxterm bug

I have a bug with zsh under nxterm not setting $LINES.  nxterm is a patched
xterm upon which I will expand in a minute.

When resizing the nxterm, zsh 3.0.5 fails to set $LINES to the new size of the
window.  It does receive a SIGWINCH.  It also works properly when using the
standard distributed xterm.  bash and tcsh work properly under nxterm, at least
as far as setting $LINES.  The bug is repeatable when started with -f.

This is under Solaris 2.5.1 using X11R6.3.

nxterm is one of the many color xterms that have been patched from the standard,
specifically one that is distributed with RedHat Linux.  I liked it, so I
compiled it from the source in xterm-color-1.1-6.src.rpm.  I applied all of the
patches that come in the rpm to the source and it compiled without any changes. 
I can supply the source in a more standard form if you need.

Here is a little system trace of zsh under each term:

Standard X11R6.3 xterm (works)
cobalt% truss -wall -p 5624
read(10, 0xEFFFF57F, 1)         (sleeping...)
    Received signal #20, SIGWINCH, in read() [caught]
read(10, 0xEFFFF57F, 1)                         Err#4 EINTR
sigprocmask(SIG_BLOCK, 0xEFFFF258, 0xEFFFF1B8)  = 0
sigprocmask(SIG_SETMASK, 0xEFFFF248, 0xEFFFF1B8) = 0
ioctl(10, TIOCGWINSZ, 0x00095464)               = 0
ioctl(10, TIOCGSID, 0xEFFFEF74)                 = 0
getsid(0)                                       = 5624
ioctl(10, TIOCSPGRP, 0xEFFFF020)                = 0
ioctl(10, TCSETSW, 0xEFFFF0A8)                  = 0
getuid()                                        = 710 [710]
write(10, 0x0008EDE8, 21)                       = 21
  \r1B [ m1B [ m1B [ m1B [ J c o b a l t %  
read(10, 0xEFFFF57F, 1)         (sleeping...)

nxterm (doesn't work)
cobalt% truss -wall -p 8037
read(10, 0xEFFFF547, 1)         (sleeping...)
    Received signal #20, SIGWINCH, in read() [caught]
read(10, 0xEFFFF547, 1)                         Err#4 EINTR
sigprocmask(SIG_BLOCK, 0xEFFFF220, 0xEFFFF180)  = 0
sigprocmask(SIG_SETMASK, 0xEFFFF210, 0xEFFFF180) = 0
ioctl(10, TIOCGWINSZ, 0x00095464)               = 0
read(10, 0xEFFFF547, 1)         (sleeping...)

I hope that you haven't listed this somewhere already.  I'd hate to be a spammer.

I do not subscribe to this list, so I'd appreciate a direct reply if you have
one.  Also, please reply directly if you need any more information.

Thanks for the shell.

-Bitt Faulk

Attachment: pgpmXyri7m82Q.pgp
Description: PGP signature

Messages sorted by: Reverse Date, Date, Thread, Author