From 2d265a91ccd84e896f2bca9764147630d0d7d003 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 30 Oct 2007 00:17:21 +0000 Subject: deal properly with signals interrupting us when we wait for data from gconf helper git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1992 fefdeb5f-60dc-0310-8127-8f9354f1896f --- src/modules/gconf/module-gconf.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/modules/gconf/module-gconf.c b/src/modules/gconf/module-gconf.c index 1c8866de..c2ea7b27 100644 --- a/src/modules/gconf/module-gconf.c +++ b/src/modules/gconf/module-gconf.c @@ -225,8 +225,11 @@ static int handle_event(struct userdata *u) { int ret = 0; do { - if ((opcode = read_byte(u)) < 0) + if ((opcode = read_byte(u)) < 0){ + if (errno == EINTR || errno == EAGAIN) + break; goto fail; + } switch (opcode) { case '!': @@ -509,4 +512,3 @@ void pa__done(pa_module*m) { pa_xfree(u); } - -- cgit