Re: ncurses & libc6
Miguel de Icaza wrote:
>
> > I traced a bit some programs and it seems that wrong key codes are sent when
> > I press arrow keys (I got ^[OA instead of ^[[A as expected by ncurses).
> > It is apparently triggered by a call to raw() or keypad() before reading input
> > stream (getch).
>
> Actually, ^[OA is fine. This one is sent when the keypad is put on
> application mode. This is more a problem in terminfo/ncurses. Your
> ncurses/terminfo is choosing to send this escape sequence. So, try
> chasing down why this escape sequence is being sent.
>
> > PS: I'm running sparclinux-2.0.30 & I'm trying to run ncurses-1.9.9g.
>
> I had the impression that there was a newer, bug-fixed version of
> ncurses, the one that started the ncurses flame war, sorry, I do not
> know where this one is.
Hello Miguel,
I did more test and I think I found one bug related to glibc2:
I packaged snapshot-970629 but it seems that ioctl implementation is wrong:
it provides a header for sparc implementation
(sysdeps/unix/sysv/linux/sparc/bits/ioctls.h) that declares wrong ioctls.
TCGETS/TCSETS... are tagged by 't' instead of 'T' and a wrong id.
---excerpt from ...sparc/bits/ioctls.h---
#define TCGETS _IOR ('t', 19, struct __kernel_termios)
#define TCSETS _IOW ('t', 20, struct __kernel_termios)
#define TCSETSW _IOW ('t', 21, struct __kernel_termios)
#define TCSETSF _IOW ('t', 22, struct __kernel_termios)
-----------------------------------------
---excerpt from asm-sparc/ioctls.h---
#define TCGETS _IOR('T', 8, struct termios)
#define TCSETS _IOW('T', 9, struct termios)
#define TCSETSW _IOW('T', 10, struct termios)
#define TCSETSF _IOW('T', 11, struct termios)
-------------------------------------
I'm thinking of removing ...sparc/bits/ioctls.h in favor of
linux/bits/ioctls.h because, in my opinion, the assertion wrote in the former
is wrong:
/* Oh well, this is necessary since the kernel data structure is
different from the user-level version. */
However, struct __kernel_termios (sysdeps/unix/sysv/linux/kernel_termios.h)
and struct termios (sysdeps/unix/sysv/linux/sparc/bits/termios.h) are of same
layout.
Maybe I'm wrong, since comparing ...linux/sparc/bits/termios.h to their alpha
or powerpc counterparts shows apparently that the former is outdated.
In this case, ...linux/sparc/bits/termios.h should be kept but TCGETS, ...
have to be removed.
PS: Miguel, what version of glibc you are working on?
Regards.
--
Eric Delaunay | "La guerre justifie l'existence des militaires.
delaunay@lix.polytechnique.fr | En les supprimant." Henri Jeanson (1900-1970)
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-sparc-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: