summaryrefslogtreecommitdiff
path: root/tools/evemu-describe.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/evemu-describe.c')
-rw-r--r--tools/evemu-describe.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/tools/evemu-describe.c b/tools/evemu-describe.c
index ec6b1ef..6c6cdab 100644
--- a/tools/evemu-describe.c
+++ b/tools/evemu-describe.c
@@ -26,22 +26,27 @@
26 * 26 *
27 ****************************************************************************/ 27 ****************************************************************************/
28 28
29#include "evemu.h" 29#include <evemu.h>
30#include <stdio.h> 30#include <stdio.h>
31#include <fcntl.h> 31#include <fcntl.h>
32#include <string.h> 32#include <string.h>
33 33
34static int describe_device(int fd) 34static int describe_device(int fd)
35{ 35{
36 struct evemu_device dev; 36 struct evemu_device *dev;
37 int ret; 37 int ret = -ENOMEM;
38 38
39 ret = evemu_extract(&dev, fd); 39 dev = evemu_new(0);
40 if (!dev)
41 goto out;
42 ret = evemu_extract(dev, fd);
40 if (ret) 43 if (ret)
41 return ret; 44 goto out;
42 evemu_write(&dev, stdout);
43 45
44 return 0; 46 evemu_write(dev, stdout);
47out:
48 evemu_delete(dev);
49 return ret;
45} 50}
46 51
47int main(int argc, char *argv[]) 52int main(int argc, char *argv[])