From 342b660afa618b5b4d4e7194854fdd7895fcd1e4 Mon Sep 17 00:00:00 2001 From: ddennedy Date: Thu, 27 Mar 2008 21:32:51 +0000 Subject: [PATCH] src/eventloop.c: redo the undo (git-svn virgin at the controls) git-svn-id: svn://svn.linux1394.org/libraw1394/trunk@179 53a565d1-3bb7-0310-b661-cf11e63c67ab --- src/eventloop.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/eventloop.c b/src/eventloop.c index 0ddd455..4a027b2 100644 --- a/src/eventloop.c +++ b/src/eventloop.c @@ -21,6 +21,7 @@ #include #include #include +#include #include "raw1394.h" #include "kernel-raw1394.h" @@ -32,8 +33,8 @@ int raw1394_loop_iterate(struct raw1394_handle *handle) struct raw1394_request req; int retval = 0, channel; - if (read(handle->fd, &req, sizeof(req)) < 0) { - return -1; + while (read(handle->fd, &req, sizeof(req)) < 0) { + if (errno != EINTR) return -1; } switch (req.type) {