]> code.delx.au - pulseaudio/commitdiff
shm: don't complain about missing SHM segments
authorLennart Poettering <lennart@poettering.net>
Fri, 19 Feb 2010 02:29:36 +0000 (03:29 +0100)
committerLennart Poettering <lennart@poettering.net>
Sun, 21 Feb 2010 16:48:17 +0000 (17:48 +0100)
If two clients try to cleanup the SHM directory at the same time, they
might want to open and then delete the same segment at the same time, in
which case one client might win, the other one lose. In this case, don't
warn about ENOENT.

src/pulsecore/shm.c

index 29849d571a2d0203faef690bcc5f9f7a3f0c358c..5d5d85ab2d24cdb44c85f0dd8e98188be895e7ce 100644 (file)
@@ -290,7 +290,7 @@ int pa_shm_attach_ro(pa_shm *m, unsigned id) {
     segment_name(fn, sizeof(fn), m->id = id);
 
     if ((fd = shm_open(fn, O_RDONLY, 0)) < 0) {
-        if (errno != EACCES)
+        if (errno != EACCES && errno != ENOENT)
             pa_log("shm_open() failed: %s", pa_cstrerror(errno));
         goto fail;
     }