diff options
author | Lennart Poettering <lennart@poettering.net> | 2007-08-30 22:42:02 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2007-08-30 22:42:02 +0000 |
commit | 687f1f15fc3fcd99ce79cc402c48ec6a469f0333 (patch) | |
tree | 5d9629ce27fc153d9455fdaf21edb2c6b9379643 | |
parent | c2e4328c53ee32f0a49c259371945c1b19539794 (diff) |
add new function pa_memblock_ref_is_one()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1729 fefdeb5f-60dc-0310-8127-8f9354f1896f
-rw-r--r-- | src/pulsecore/memblock.c | 12 | ||||
-rw-r--r-- | src/pulsecore/memblock.h | 1 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/pulsecore/memblock.c b/src/pulsecore/memblock.c index 914e429a..3e2b0064 100644 --- a/src/pulsecore/memblock.c +++ b/src/pulsecore/memblock.c @@ -385,6 +385,18 @@ int pa_memblock_is_read_only(pa_memblock *b) { } /* No lock necessary */ +int pa_memblock_ref_is_one(pa_memblock *b) { + int r; + + pa_assert(b); + + r = PA_REFCNT_VALUE(b); + pa_assert(r > 0); + + return r == 1; +} + +/* No lock necessary */ void* pa_memblock_acquire(pa_memblock *b) { pa_assert(b); pa_assert(PA_REFCNT_VALUE(b) > 0); diff --git a/src/pulsecore/memblock.h b/src/pulsecore/memblock.h index 6f8bbef3..7fa6627e 100644 --- a/src/pulsecore/memblock.h +++ b/src/pulsecore/memblock.h @@ -107,6 +107,7 @@ manually if called from more than one thread at the same time. */ void pa_memblock_unref_fixed(pa_memblock*b); int pa_memblock_is_read_only(pa_memblock *b); +int pa_memblock_ref_is_one(pa_memblock *b); void* pa_memblock_acquire(pa_memblock *b); void pa_memblock_release(pa_memblock *b); size_t pa_memblock_get_length(pa_memblock *b); |