summaryrefslogtreecommitdiff
path: root/tools/evemu-echo.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/evemu-echo.c')
-rw-r--r--tools/evemu-echo.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/tools/evemu-echo.c b/tools/evemu-echo.c
index d3501ea..e9c89df 100644
--- a/tools/evemu-echo.c
+++ b/tools/evemu-echo.c
@@ -33,16 +33,20 @@
33 33
34static int evemu_echo_describe(FILE *fp) 34static int evemu_echo_describe(FILE *fp)
35{ 35{
36 struct evemu_device dev; 36 struct evemu_device *dev;
37 int ret; 37 int ret = -ENOMEM;
38 38
39 ret = evemu_read(&dev, fp); 39 dev = evemu_new(0);
40 if (!dev)
41 goto out;
42 ret = evemu_read(dev, fp);
40 if (ret <= 0) 43 if (ret <= 0)
41 return ret; 44 goto out;
42
43 evemu_write(&dev, stdout);
44 45
45 return 0; 46 evemu_write(dev, stdout);
47out:
48 evemu_delete(dev);
49 return ret;
46} 50}
47 51
48static int evemu_echo_event(FILE *fp) 52static int evemu_echo_event(FILE *fp)