From b19bbc8af292f8c1fa1a7e5979301c7b17cec476 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Thu, 9 Apr 2020 15:32:13 -0400 Subject: [PATCH] lib: add `size >= 1` pre-condition to bt_field_class_integer_set_field_value_range An integer of 0 bits is not very useful. Change-Id: I00a4114dc4a949a4876f810f603226a1c5936751 Signed-off-by: Simon Marchi Reviewed-on: https://review.lttng.org/c/babeltrace/+/3385 Reviewed-by: Philippe Proulx --- include/babeltrace2/trace-ir/field-class.h | 2 +- src/lib/trace-ir/field-class.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/babeltrace2/trace-ir/field-class.h b/include/babeltrace2/trace-ir/field-class.h index 4e1505c6..078e0080 100644 --- a/include/babeltrace2/trace-ir/field-class.h +++ b/include/babeltrace2/trace-ir/field-class.h @@ -1737,7 +1737,7 @@ See the \ref api-tir-fc-int-prop-size "field value range" property. @bt_pre_hot{field_class} @bt_pre_is_int_fc{field_class} @pre - \bt_p{n} ⩽ 64. + 1 ⩽ \bt_p{n} ⩽ 64. @sa bt_field_class_integer_get_field_value_range() — Returns the field value range of an integer field class. diff --git a/src/lib/trace-ir/field-class.c b/src/lib/trace-ir/field-class.c index 316d6e4d..00a7cd3c 100644 --- a/src/lib/trace-ir/field-class.c +++ b/src/lib/trace-ir/field-class.c @@ -261,9 +261,9 @@ void bt_field_class_integer_set_field_value_range( BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_IS_INT(fc, "Field class"); BT_ASSERT_PRE_DEV_FC_HOT(fc, "Field class"); - BT_ASSERT_PRE(size <= 64, + BT_ASSERT_PRE(size >= 1 && size <= 64, "Unsupported size for integer field class's field value range " - "(maximum is 64): size=%" PRIu64, size); + "(minimum is 1, maximum is 64): size=%" PRIu64, size); BT_ASSERT_PRE( int_fc->common.type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || int_fc->common.type == BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || -- 2.34.1