From dbbf15a7fad8b76122061344aeddb652bd4fe442 Mon Sep 17 00:00:00 2001 From: Chase Douglas Date: Mon, 21 Jun 2010 09:57:56 -0400 Subject: mtdev_get: return number of retrieved events if error occurs Otherwise, we pull events, but return -1. We should send the events we were able to retrieve for now. Signed-off-by: Chase Douglas Signed-off-by: Henrik Rydberg --- src/iobuf.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/iobuf.c') diff --git a/src/iobuf.c b/src/iobuf.c index 85a9f19..b58fdf6 100644 --- a/src/iobuf.c +++ b/src/iobuf.c @@ -76,10 +76,8 @@ int mtdev_get(struct mtdev *dev, int fd, struct input_event* ev, int ev_max) while (count < ev_max) { while (mtdev_empty(dev)) { ret = mtdev_fetch_event(dev, fd, &kev); - if (ret < 0) - return ret; - if (ret == 0) - return count; + if (ret <= 0) + return count > 0 ? count : ret; mtdev_put_event(dev, &kev); } mtdev_get_event(dev, &ev[count++]); -- cgit v1.2.3