diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2010-09-10 09:39:14 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2011-06-29 05:15:03 +1000 |
commit | 4cb20983601517f3b4b9feb912a69323a8ebe980 (patch) | |
tree | 2f7499cb080dde96d03eee85275f422faeea2dd2 | |
parent | 1ee588fffea86e762d775fe306a118e6ade269c8 (diff) | |
download | xf86-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.c | 27 |
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; } |