summaryrefslogtreecommitdiff
path: root/make_usable.c
diff options
context:
space:
mode:
authorAaron Plattner <aplattner@nvidia.com>2008-04-10 13:58:23 -0700
committerAaron Plattner <aplattner@nvidia.com>2008-04-10 13:58:23 -0700
commitaded256a432c5979c9b27c73689bda7e522b3090 (patch)
tree686c69fd3e52c16fec95af986ad0a07ed8fcced3 /make_usable.c
parente6b6ff7786821e1f8870d8061c22061030b2d2c6 (diff)
173.08173.08
Diffstat (limited to 'make_usable.c')
-rw-r--r--make_usable.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/make_usable.c b/make_usable.c
index 5617e4c..8c047d7 100644
--- a/make_usable.c
+++ b/make_usable.c
@@ -211,6 +211,40 @@ int update_extensions(Options *op, XConfigPtr config)
} /* update_extensions() */
+/*
+ * update_server_flags() - update the server flags section with any
+ * server flag options; the only option so far is "HandleSpecialKeys"
+ */
+
+int update_server_flags(Options *op, XConfigPtr config)
+{
+ if (!op->handle_special_keys) return TRUE;
+
+ if (!config->flags) {
+ config->flags = nvalloc(sizeof(XConfigFlagsRec));
+ if ( !config->flags ) {
+ return FALSE;
+ }
+ }
+
+ if (config->flags->options) {
+ remove_option_from_list(&(config->flags->options),
+ "HandleSpecialKeys");
+ }
+
+ if (op->handle_special_keys != NV_DISABLE_STRING_OPTION) {
+ config->flags->options =
+ xconfigAddNewOption(config->flags->options,
+ "HandleSpecialKeys",
+ op->handle_special_keys);
+ }
+
+ return TRUE;
+
+} /* update_server_flags() */
+
+
+
/*
* update_device() - update the device; there is a lot of information