git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1634
fefdeb5f-60dc-0310-8127-
8f9354f1896f
void pa_fdsem_free(pa_fdsem *f) {
pa_assert(f);
- pa_assert(pa_atomic_load(&f->waiting) == 0);
-
close(f->fds[0]);
close(f->fds[1]);
pa_atomic_inc(&f->waiting);
if (pa_atomic_cmpxchg(&f->signalled, 1, 0)) {
- pa_atomic_dec(&f->waiting);
+ pa_assert_se(pa_atomic_dec(&f->waiting) >= 1);
return -1;
- }
-
+ }
return 0;
}
int pa_fdsem_after_poll(pa_fdsem *f) {
pa_assert(f);
- pa_atomic_dec(&f->waiting);
+ pa_assert_se(pa_atomic_dec(&f->waiting) >= 1);
flush(f);