test: provide uinput convenience function for varargs

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Peter Hutterer 2013-06-29 18:10:01 +10:00
parent a30f4cfa8a
commit f9532700bc
2 changed files with 14 additions and 4 deletions

View file

@ -66,10 +66,9 @@ uinput_device_new(const char *name)
} }
int 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; int rc;
va_list args;
struct uinput_device *dev; struct uinput_device *dev;
dev = uinput_device_new(name); 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) if (id != DEFAULT_IDS)
uinput_device_set_ids(dev, id); uinput_device_set_ids(dev, id);
va_start(args, id);
rc = uinput_device_set_event_bits_v(dev, args); rc = uinput_device_set_event_bits_v(dev, args);
va_end(args);
if (rc == 0) if (rc == 0)
rc = uinput_device_create(dev); rc = uinput_device_create(dev);
@ -94,6 +91,18 @@ uinput_device_new_with_events(struct uinput_device **d, const char *name, const
return rc; 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 void
uinput_device_free(struct uinput_device *dev) uinput_device_free(struct uinput_device *dev)

View file

@ -28,6 +28,7 @@
struct uinput_device* uinput_device_new(const char *name); 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(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); void uinput_device_free(struct uinput_device *dev);
int uinput_device_create(struct uinput_device* dev); int uinput_device_create(struct uinput_device* dev);