virBitmapNextSetBit/virBitmapLastSetBit/virBitmapNextClearBit can be
used for iteration of a bitmap. Allow NULL bitmap so that iteration of a
bitmap can be simplified in certain cases.
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
size_t nb;
unsigned long bits;
+ if (!bitmap)
+ return -1;
+
if (pos < 0)
pos = -1;
ssize_t sz;
unsigned long bits;
+ if (!bitmap)
+ return -1;
+
/* If bitmap is empty then there is no set bit */
if (bitmap->map_len == 0)
return -1;
size_t nb;
unsigned long bits;
+ if (!bitmap)
+ return -1;
+
if (pos < 0)
pos = -1;
bool virBitmapIsAllClear(virBitmap *bitmap)
ATTRIBUTE_NONNULL(1);
-ssize_t virBitmapNextSetBit(virBitmap *bitmap, ssize_t pos)
- ATTRIBUTE_NONNULL(1);
+ssize_t virBitmapNextSetBit(virBitmap *bitmap, ssize_t pos);
-ssize_t virBitmapLastSetBit(virBitmap *bitmap)
- ATTRIBUTE_NONNULL(1);
+ssize_t virBitmapLastSetBit(virBitmap *bitmap);
-ssize_t virBitmapNextClearBit(virBitmap *bitmap, ssize_t pos)
- ATTRIBUTE_NONNULL(1);
+ssize_t virBitmapNextClearBit(virBitmap *bitmap, ssize_t pos);
size_t virBitmapCountBits(virBitmap *bitmap)
ATTRIBUTE_NONNULL(1);