test: provide uinput convenience function for varargs
authorPeter Hutterer <peter.hutterer@who-t.net>
Sat, 29 Jun 2013 08:10:01 +0000 (18:10 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Sat, 29 Jun 2013 08:10:21 +0000 (18:10 +1000)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
test/test-common-uinput.c
test/test-common-uinput.h

index 607f2d2b7335e2aa4f671e4ae650e12551c70c4b..d0b8e212eedb507fcc4d961cf58dab6877e7c637 100644 (file)
@@ -66,10 +66,9 @@ uinput_device_new(const char *name)
 }
 
 int
-uinput_device_new_with_events(struct uinput_device **d, const char *name, const struct input_id *id, ...)
+uinput_device_new_with_events_v(struct uinput_device **d, const char *name, const struct input_id *id, va_list args)
 {
        int rc;
-       va_list args;
        struct uinput_device *dev;
 
        dev = uinput_device_new(name);
@@ -78,9 +77,7 @@ uinput_device_new_with_events(struct uinput_device **d, const char *name, const
        if (id != DEFAULT_IDS)
                uinput_device_set_ids(dev, id);
 
-       va_start(args, id);
        rc = uinput_device_set_event_bits_v(dev, args);
-       va_end(args);
 
        if (rc == 0)
                rc = uinput_device_create(dev);
@@ -94,6 +91,18 @@ uinput_device_new_with_events(struct uinput_device **d, const char *name, const
        return rc;
 }
 
+int
+uinput_device_new_with_events(struct uinput_device **d, const char *name, const struct input_id *id, ...)
+{
+       int rc;
+       va_list args;
+
+       va_start(args, id);
+       rc = uinput_device_new_with_events_v(d, name, id, args);
+       va_end(args);
+
+       return rc;
+}
 
 void
 uinput_device_free(struct uinput_device *dev)
index f195bdeaa465499fb22445fbe0bee2b298349dca..e3829e2149474dd3705f82cf0440ca819a511047 100644 (file)
@@ -28,6 +28,7 @@
 
 struct uinput_device* uinput_device_new(const char *name);
 int uinput_device_new_with_events(struct uinput_device **dev, const char *name, const struct input_id *ids, ...);
+int uinput_device_new_with_events_v(struct uinput_device **dev, const char *name, const struct input_id *ids, va_list args);
 void uinput_device_free(struct uinput_device *dev);
 
 int uinput_device_create(struct uinput_device* dev);