diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2011-09-15 12:28:24 -0700 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2011-09-15 12:28:24 -0700 |
commit | 2f0a541cc58f74ba2be6d2946f199aad95db628d (patch) | |
tree | 9112e66de000deeab5640c9a8b906c787346a55f | |
parent | 3163ac32f619b4f335a14f34d5d5a0a7b2e5d98a (diff) |
285.03285.03
-rw-r--r-- | XF86Config-parser/Merge.c | 39 | ||||
-rw-r--r-- | version.mk | 2 |
2 files changed, 40 insertions, 1 deletions
diff --git a/XF86Config-parser/Merge.c b/XF86Config-parser/Merge.c index e302e5e..67ba8e2 100644 --- a/XF86Config-parser/Merge.c +++ b/XF86Config-parser/Merge.c @@ -713,6 +713,38 @@ static int xconfigMergeLayout(XConfigPtr dstConfig, XConfigPtr srcConfig) /* + * xconfigMergeExtensions() - Updates information in the destination's extension + * section with that of the source's extension section. + * Currently considering composite extension only. + * + */ +static int xconfigMergeExtensions(XConfigPtr dstConfig, XConfigPtr srcConfig) +{ + if (srcConfig->extensions) { + XConfigOptionPtr option; + + /* Extension section was not found, create a new one */ + if (!dstConfig->extensions) { + dstConfig->extensions = + (XConfigExtensionsPtr) calloc(1, sizeof(XConfigExtensionsRec)); + if (!dstConfig->extensions) return 0; + } + + option = srcConfig->extensions->options; + while (option) { + xconfigMergeOption(&(dstConfig->extensions->options), + &(srcConfig->extensions->options), + xconfigOptionName(option), + &(dstConfig->extensions->comment)); + option = option->next; + } + } + + return 1; + +} /* xconfigMergeExtensions() */ + +/* * xconfigMergeConfigs() - Merges the source X configuration with the * destination X configuration. * @@ -763,6 +795,13 @@ int xconfigMergeConfigs(XConfigPtr dstConfig, XConfigPtr srcConfig) return 0; } + /* Merge the extensions */ + + if (!xconfigMergeExtensions(dstConfig, srcConfig)) { + return 0; + } + + return 1; } /* xconfigMergeConfigs() */ @@ -1 +1 @@ -NVIDIA_VERSION = 280.13 +NVIDIA_VERSION = 285.03 |