[PATCH] memblock: multiple references should make blocks read-only

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 */
-- 
2.8.1



[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux