summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2010-09-10 09:39:14 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2011-06-29 05:15:03 +1000
commit4cb20983601517f3b4b9feb912a69323a8ebe980 (patch)
tree2f7499cb080dde96d03eee85275f422faeea2dd2
parent1ee588fffea86e762d775fe306a118e6ade269c8 (diff)
downloadxf86-input-wacom-4cb20983601517f3b4b9feb912a69323a8ebe980.tar.gz
Use xf86OptionListDuplicate under input ABI 12.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit ea392a15560e19d28caf082f113e58edb6e56132)
-rw-r--r--src/wcmValidateDevice.c27
1 files changed, 18 insertions, 9 deletions
diff --git a/src/wcmValidateDevice.c b/src/wcmValidateDevice.c
index c4de038..dec9a24 100644
--- a/src/wcmValidateDevice.c
+++ b/src/wcmValidateDevice.c
@@ -177,28 +177,37 @@ static InputOption *wcmOptionDupConvert(InputInfoPtr pInfo, const char *type)
{
pointer original = pInfo->options;
InputOption *iopts = NULL, *new;
- InputInfoRec dummy;
char *name;
+ pointer options;
- memset(&dummy, 0, sizeof(dummy));
- xf86CollectInputOptions(&dummy, NULL, original);
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+ options = xf86OptionListDuplicate(original);
+#else
+ {
+ InputInfoRec dummy;
+
+ memset(&dummy, 0, sizeof(dummy));
+ xf86CollectInputOptions(&dummy, NULL, original);
+ options = dummy.options;
+ }
+#endif
name = calloc(strlen(pInfo->name) + strlen(type) + 2, 1);
sprintf(name, "%s %s", pInfo->name, type);
- dummy.options = xf86ReplaceStrOption(dummy.options, "Type", type);
- dummy.options = xf86ReplaceStrOption(dummy.options, "Name", name);
+ options = xf86ReplaceStrOption(options, "Type", type);
+ options = xf86ReplaceStrOption(options, "Name", name);
free(name);
- while(dummy.options)
+ while(options)
{
new = calloc(1, sizeof(InputOption));
- new->key = xf86OptionName(dummy.options);
- new->value = xf86OptionValue(dummy.options);
+ new->key = xf86OptionName(options);
+ new->value = xf86OptionValue(options);
new->next = iopts;
iopts = new;
- dummy.options = xf86NextOption(dummy.options);
+ options = xf86NextOption(options);
}
return iopts;
}