summaryrefslogtreecommitdiffstats
path: root/src/modules/gconf
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2007-10-30 00:17:21 +0000
committerLennart Poettering <lennart@poettering.net>2007-10-30 00:17:21 +0000
commit2d265a91ccd84e896f2bca9764147630d0d7d003 (patch)
tree499f23a265e83e020959ec4c7ce5816868be2937 /src/modules/gconf
parentf1be9312cb97dbbdb0a54568fee9acc8571190c5 (diff)
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
Diffstat (limited to 'src/modules/gconf')
-rw-r--r--src/modules/gconf/module-gconf.c6
1 files 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);
}
-