summaryrefslogtreecommitdiff
path: root/os
diff options
context:
space:
mode:
authorKevin E Martin <kem@kem.org>2004-07-31 04:23:21 +0000
committerKevin E Martin <kem@kem.org>2004-07-31 04:23:21 +0000
commit25bd6ff4a622d09fb0c247b7c40281744c61431e (patch)
tree7ae6338cd31a4e6134195ace92de42e075abdad3 /os
parent326729ebca863c99cf913445126294a3c6d3db5d (diff)
Add new extension enable/disable feature. This code is a small step in the
right direction -- i.e., moving towards full run-time config of extensions. Currently, only XTEST, XINERAMA, RENDER, XKB, and XEVIE are supported.
Diffstat (limited to 'os')
-rw-r--r--os/utils.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/os/utils.c b/os/utils.c
index 30dcd5f73..eccb2b37a 100644
--- a/os/utils.c
+++ b/os/utils.c
@@ -1,4 +1,4 @@
-/* $XdotOrg: xc/programs/Xserver/os/utils.c,v 1.2 2004/04/23 19:54:28 eich Exp $ */
+/* $XdotOrg: xc/programs/Xserver/os/utils.c,v 1.3 2004/06/19 21:56:01 gisburn Exp $ */
/* $Xorg: utils.c,v 1.5 2001/02/09 02:05:24 xorgcvs Exp $ */
/*
@@ -119,6 +119,7 @@ OR PERFORMANCE OF THIS SOFTWARE.
#ifdef RENDER
#include "picture.h"
+Bool noRenderExtension = FALSE;
#endif
#define X_INCLUDE_NETDB_H
@@ -137,6 +138,10 @@ Bool PanoramiXWindowExposureSent = FALSE;
Bool PanoramiXOneExposeRequest = FALSE;
#endif
+#ifdef XEVIE
+Bool noXevieExtension = TRUE;
+#endif
+
int auditTrailLevel = 1;
Bool Must_have_memory = FALSE;
@@ -170,6 +175,9 @@ char *dev_tty_from_init = NULL; /* since we need to parse it anyway */
extern char dispatchExceptionAtReset;
+/* Extension enable/disable in miinitext.c */
+extern Bool EnableDisableExtension(char *name, Bool enable);
+
OsSigHandlerPtr
OsSignal(sig, handler)
int sig;
@@ -549,6 +557,8 @@ void UseMsg(void)
ErrorF("-dumbSched Disable smart scheduling, enable old behavior\n");
ErrorF("-schedInterval int Set scheduler interval in msec\n");
#endif
+ ErrorF("+extension name Enable extension\n");
+ ErrorF("-extension name Disable extension\n");
#ifdef XDMCP
XdmcpUseMsg();
#endif
@@ -999,6 +1009,16 @@ ProcessCommandLine(int argc, char *argv[])
UseMsg ();
}
#endif
+ else if ( strcmp( argv[i], "+extension") == 0)
+ {
+ if (++i >= argc || !EnableDisableExtension(argv[i], TRUE))
+ UseMsg();
+ }
+ else if ( strcmp( argv[i], "-extension") == 0)
+ {
+ if (++i >= argc || !EnableDisableExtension(argv[i], FALSE))
+ UseMsg();
+ }
else
{
ErrorF("Unrecognized option: %s\n", argv[i]);