Notification iterator: transform precondition checks to BT_ASSERT_PRE()
[babeltrace.git] / lib / graph / notification / notification.c
index 8d045fa5feceb3f0012f689ee53e8f2c37816628..57da6c333c3ae95c80d24babd2eec2bcff210ccf 100644 (file)
 #include <babeltrace/assert-internal.h>
 #include <babeltrace/assert-pre-internal.h>
 
+BT_ASSERT_PRE_FUNC
+static inline void _init_seq_num(struct bt_notification *notification)
+{
+       notification->seq_num = -1ULL;
+}
+
+#ifdef BT_DEV_MODE
+# define init_seq_num  _init_seq_num
+#else
+# define init_seq_num(_notif)
+#endif /* BT_DEV_MODE */
+
 BT_HIDDEN
 void bt_notification_init(struct bt_notification *notification,
                enum bt_notification_type type,
                bt_object_release_func release)
 {
-       BT_ASSERT(type > BT_NOTIFICATION_TYPE_ALL &&
-                       type < BT_NOTIFICATION_TYPE_NR);
+       BT_ASSERT(type >= 0 && type < BT_NOTIFICATION_TYPE_NR);
        notification->type = type;
+       init_seq_num(notification);
        bt_object_init(&notification->base, release);
 }
 
This page took 0.023964 seconds and 4 git commands to generate.