On 08.06.2016 20:18, Tanu Kaskinen wrote: > The old code makes no sense to me. Why would multiple references mean > that a previously read-only memblock is suddenly writable? I'm pretty > sure that the original intention was to treat multi-referenced blocks > as read-only. I don't have any examples where the old code would have > caused bad behaviour, however. > --- > src/pulsecore/memblock.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/pulsecore/memblock.c b/src/pulsecore/memblock.c > index 17520ed..babe5cd 100644 > --- a/src/pulsecore/memblock.c > +++ b/src/pulsecore/memblock.c > @@ -497,7 +497,7 @@ bool pa_memblock_is_read_only(pa_memblock *b) { > pa_assert(b); > pa_assert(PA_REFCNT_VALUE(b) > 0); > > - return b->read_only && PA_REFCNT_VALUE(b) == 1; > + return b->read_only || PA_REFCNT_VALUE(b) > 1; > } > > /* No lock necessary */ Arun already acknowledged that patch, looks like you forgot to push it. Regards Georg