diff --git a/src/util/virbitmap.c b/src/util/virbitmap.c index 05c50e4e8e..d5b0035f50 100644 --- a/src/util/virbitmap.c +++ b/src/util/virbitmap.c @@ -504,6 +504,12 @@ bool virBitmapEqual(virBitmapPtr b1, virBitmapPtr b2) virBitmapPtr tmp; size_t i; + if (!b1 && !b2) + return true; + + if (!b1 || !b2) + return false; + if (b1->max_bit > b2->max_bit) { tmp = b1; b1 = b2; diff --git a/src/util/virbitmap.h b/src/util/virbitmap.h index 565264cc4c..a347f0afdc 100644 --- a/src/util/virbitmap.h +++ b/src/util/virbitmap.h @@ -84,8 +84,7 @@ virBitmapPtr virBitmapNewData(void *data, int len) ATTRIBUTE_NONNULL(1); int virBitmapToData(virBitmapPtr bitmap, unsigned char **data, int *dataLen) ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); -bool virBitmapEqual(virBitmapPtr b1, virBitmapPtr b2) - ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); +bool virBitmapEqual(virBitmapPtr b1, virBitmapPtr b2); size_t virBitmapSize(virBitmapPtr bitmap) ATTRIBUTE_NONNULL(1);