This is the mail archive of the cygwin-xfree mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Xterm hangs with latest Cygwin (-62?)


On 05/10/2009 13:47, Corinna Vinschen wrote:
And here's the problem.  Cygwin doesn't have TIOCSCTTY, and the only way
to make a terminal a controlling tty in Cygwin is to call open() on it,
which tcsh misses to do.  Bash, however, calls open("/dev/tty", O_RDWR),
so bash doesn't have this problem.

Out of curiosity, what about implementing TIOCSCTTY?


Unfortunately, luit has no alternative way to make the new tty the
controlling tty.  What we need is a patch like this in luit:

--- sys.c.ORIG	2009-10-05 19:23:58.000000000 +0200
+++ sys.c	2009-10-05 19:18:34.000000000 +0200
@@ -408,7 +408,11 @@ openTty(char *line)
      int rc;
      int tty = -1;

+#ifdef __CYGWIN__
+    tty = open(line, O_RDWR);
+#else
      tty = open(line, O_RDWR | O_NOCTTY);
+#endif

For portability, perhaps this should also be #ifdef TIOCSCTTY, if these two sections go hand-in-hand?


This works fine for me with tcsh now as well.  This patch is really
important, since not only tcsh is affected by this.  If you call, for
instance, `xterm -e /bin/vim', vim works, but it has no controlling tty
either, as easily visible in `ps -e' output.  So a patch to tcsh would
only fix this for tcsh, but not for any other application.

As for the Cygwin bug, it has to do with the return value of tcgetpgrp,
which appears to be incorrect in a couple of situations.  I'm not
quite sure how to explain this, yet, nor if I really understood it.
I'll follow up on this later this week on the cygwin-developers list.

Yaakov, could you please generate a new luit package with the above
patch?

Sure.


P.S: I had to build luit manually for testing.  Building with cyport
failed:

   configure.ac:30: error: must install xorg-macros 1.3 or later before
   running autoconf/autogen

xorg-util-macros 1.3 is part of the upcoming X11R7.5, which I planned to release in one upload once all the components are available, built, and tested. The luit update was also slated to be part of that, but I moved it ahead to fix the previous bug reports.



Yaakov Cygwin/X

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]