It seems this assert() was somehow misplaced.
block/qcow2-refcount.c:2193:42: warning: Array access (from variable
'on_disk_reftable') results in a null pointer dereference
on_disk_reftable[refblock_index] = refblock_offset;
~~~~~~~~~~~~~~~~ ^
Reported-by: Clang Static Analyzer
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
---
block/qcow2-refcount.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
index c9b0dcb4f3..168fc32e7b 100644
--- a/block/qcow2-refcount.c
+++ b/block/qcow2-refcount.c
@@ -2189,6 +2189,8 @@ write_refblocks:
* this will leak that range, but we can easily fix that by running
* a leak-fixing check after this rebuild operation */
reftable_offset = -1;
+ } else {
+ assert(on_disk_reftable);
}
on_disk_reftable[refblock_index] = refblock_offset;
@@ -2258,8 +2260,6 @@ write_refblocks:
goto write_refblocks;
}
- assert(on_disk_reftable);
-
for (refblock_index = 0; refblock_index < reftable_size; refblock_index++)
{
cpu_to_be64s(&on_disk_reftable[refblock_index]);
}
--
2.13.3