diff -r ce82ad163b0e src/xine-engine/io_helper.c
--- a/src/xine-engine/io_helper.c	Wed May 02 21:51:16 2007 +0200
+++ b/src/xine-engine/io_helper.c	Fri May 04 17:55:32 2007 +0100
@@ -276,7 +276,7 @@ int _x_io_select (xine_stream_t *stream,
     wset = (state & XIO_WRITE_READY) ? &fdset : NULL;
     ret = select (fd + 1, rset, wset, NULL, &select_timeout);
 
-    if (ret == -1) {
+    if (ret == -1 && errno != EINTR) {
       /* select error */
       return XIO_ERROR;
     } else if (ret == 1) {
