summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2014-01-30 08:50:06 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2014-02-04 11:27:48 +1000
commitce3df579e3f24a169189b288230959527e059080 (patch)
treed3c689b384ded50e470e96dd349b1d117e23e9d3 /test
parent2fc38d1e299587d25ca8225051e0ea9403164b15 (diff)
input: un-constify InputAttributes
Introduced in fecc7eb1cf66db64728ee2d68cd9443df7e70879 and reverts most of that but it's helpfully mixed with other stuff. InputAttributes are not const, they're strdup'd everywhere but the test code and freed properly. Revert the const char changes and fix the test up instead. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'test')
-rw-r--r--test/input.c56
1 files changed, 30 insertions, 26 deletions
diff --git a/test/input.c b/test/input.c
index aaa7a69d3..5813e6dc9 100644
--- a/test/input.c
+++ b/test/input.c
@@ -1101,7 +1101,7 @@ xi_unregister_handlers(void)
static void
cmp_attr_fields(InputAttributes * attr1, InputAttributes * attr2)
{
- const char **tags1, **tags2;
+ char **tags1, **tags2;
assert(attr1 && attr2);
assert(attr1 != attr2);
@@ -1180,50 +1180,54 @@ cmp_attr_fields(InputAttributes * attr1, InputAttributes * attr2)
static void
dix_input_attributes(void)
{
- InputAttributes orig = { 0 };
+ InputAttributes *orig;
InputAttributes *new;
- const char *tags[4] = { "tag1", "tag2", "tag2", NULL };
new = DuplicateInputAttributes(NULL);
assert(!new);
- new = DuplicateInputAttributes(&orig);
- assert(memcmp(&orig, new, sizeof(InputAttributes)) == 0);
+ orig = calloc(1, sizeof(InputAttributes));
+ assert(orig);
- orig.product = "product name";
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ new = DuplicateInputAttributes(orig);
+ assert(memcmp(orig, new, sizeof(InputAttributes)) == 0);
+
+ orig->product = xnfstrdup("product name");
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
- orig.vendor = "vendor name";
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ orig->vendor = xnfstrdup("vendor name");
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
- orig.device = "device path";
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ orig->device = xnfstrdup("device path");
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
- orig.pnp_id = "PnPID";
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ orig->pnp_id = xnfstrdup("PnPID");
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
- orig.usb_id = "USBID";
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ orig->usb_id = xnfstrdup("USBID");
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
- orig.flags = 0xF0;
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ orig->flags = 0xF0;
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
- orig.tags = tags;
- new = DuplicateInputAttributes(&orig);
- cmp_attr_fields(&orig, new);
+ orig->tags = xstrtokenize("tag1 tag2 tag3", " ");
+ new = DuplicateInputAttributes(orig);
+ cmp_attr_fields(orig, new);
FreeInputAttributes(new);
+
+ FreeInputAttributes(orig);
}
static void