util: virbitmap: Don't forbid 0 size bitmap

We now have APIs which automatically expand the bitmap and also API
which allocates a 0 size bitmap. Remove the condition from virBitmapNew.

Effectively reverts ce49cfb48a

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2020-10-01 16:45:59 +02:00
parent 5642508732
commit ee18110f93

View File

@ -55,8 +55,8 @@ struct _virBitmap {
*
* Allocate a bitmap capable of containing @size bits.
*
* Returns a pointer to the allocated bitmap or NULL if either memory cannot be
* allocated or size is 0. Does not report libvirt errors.
* Returns a pointer to the allocated bitmap or NULL if memory cannot be
* allocated. Does not report libvirt errors.
*/
virBitmapPtr
virBitmapNewQuiet(size_t size)
@ -64,12 +64,16 @@ virBitmapNewQuiet(size_t size)
virBitmapPtr bitmap;
size_t sz;
if (SIZE_MAX - VIR_BITMAP_BITS_PER_UNIT < size || size == 0)
if (SIZE_MAX - VIR_BITMAP_BITS_PER_UNIT < size)
return NULL;
sz = VIR_DIV_UP(size, VIR_BITMAP_BITS_PER_UNIT);
bitmap = g_new0(virBitmap, 1);
if (size == 0)
return bitmap;
bitmap->map = g_new0(unsigned long, sz);
bitmap->nbits = size;
bitmap->map_len = sz;