summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--programs/Xserver/hw/xfree86/CHANGELOG4
-rw-r--r--programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c17
2 files changed, 18 insertions, 3 deletions
diff --git a/programs/Xserver/hw/xfree86/CHANGELOG b/programs/Xserver/hw/xfree86/CHANGELOG
index 5134e0d6b..4ab96696e 100644
--- a/programs/Xserver/hw/xfree86/CHANGELOG
+++ b/programs/Xserver/hw/xfree86/CHANGELOG
@@ -1,4 +1,6 @@
XFree86 4.7.99.17 (xx May 2008)
+ 41. On SunOS, add a command line flag to disable the server's /dev/console
+ redirection (Marc La France).
40. Rework the handling of unassigned PCI resources in the server to ensure
they are reassigned while the server is running and restore them to their
unassigned state on server exit (Marc La France).
@@ -20728,4 +20730,4 @@ XFree86 3.0a (28 April 1994)
XFree86 3.0 (26 April 1994)
-$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3950 2008/04/24 20:10:08 tsi Exp $
+$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3951 2008/04/24 20:54:52 tsi Exp $
diff --git a/programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c b/programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c
index 533a592d8..475d4f0cd 100644
--- a/programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c
+++ b/programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c,v 1.12tsi Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/sunos/sun_init.c,v 1.13tsi Exp $ */
/*
* Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany
* Copyright 1993 by David Wexelblat <dwex@goblin.org>
@@ -48,6 +48,7 @@ static char *redirfn = NULL;
static FILE *redirfd = NULL;
static Bool redired = FALSE;
static int pipe_fds[2] = {-1, -1};
+static Bool redirectConsole = TRUE;
static void
xf86CopyRedirectedConsole(void)
@@ -274,7 +275,8 @@ xf86OpenConsole(void)
#endif
#endif
#ifdef SRIOCSREDIR
- xf86RedirectConsole();
+ if (redirectConsole)
+ xf86RedirectConsole();
#endif
}
#ifdef HAS_USL_VTS
@@ -483,6 +485,17 @@ xf86ProcessArgument(int argc, const char **argv, int i)
return 1;
}
+#ifdef SRIOCSREDIR
+ /*
+ * Disable /dev/console redirection (for testing purposes).
+ */
+ if (!strcmp(argv[i], "-noredirect"))
+ {
+ redirectConsole = FALSE;
+ return 1;
+ }
+#endif
+
#ifdef HAS_USL_VTS
if ((argv[i][0] == 'v') && (argv[i][1] == 't'))