[10398] in Athena Bugs

home help back first fref pref prev next nref lref last post

RS/6000: config_console and X server resets

daemon@ATHENA.MIT.EDU (cfields@Athena.MIT.EDU)
Tue Mar 30 20:51:49 1993

From: cfields@Athena.MIT.EDU
Date: Tue, 30 Mar 93 20:51:45 -0500
To: carla@Athena.MIT.EDU
Cc: bugs@Athena.MIT.EDU

The problem I described with the X server reset is definitely there on
the RS/6000 (in 4-035, running AIX 3.2 no?), and not on the
DECstation. If there are no X applications besides the console running
when a config_console is done, the X server does reset.

My guess is either this xlogin code is breaking on the RS/6000 now:

  /* Make another connection to the X server so that there won't be a
   * period where there are no connections to the server, causing it
   * to reset (as when a config_console is done and console is the
   * only X program running). I.e., we don't close this connection,
   * and the X socket is inherited by Xsession.
   */
  dpy1 = XOpenDisplay(DisplayString(dpy));

  if ((i = XConnectionNumber(dpy1)) >= 0) {
          fcntl(i, F_SETFD, 0);
  }

(namely, the fcntl), which I doubt, since the man page still indicates
that it should work (I can be naive sometimes),

or the shell which inherits the file descriptor is closing all
superfluous file descriptors.

I don't know how many people this actually affects anymore. As I
recall it was possible to lose in the past by putting config_console
as the first thing in your .startup.X file. However, it looks like the
dotfiles are now set up so that a window manager always gets started
before .startup.X is run, if you use the default .xsession file.

So I think only people with custom .xsession files can get whacked
by this, and then only if the first long-term X program they start
comes after their config_console.

Craig

home help back first fref pref prev next nref lref last post