X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Flib%2Ftrace-ir%2Fclock-snapshot.c;h=cbce39c14e022f90fd93c74473f719dc314dba77;hb=33f4e1fd0981727e78c82f97f64afbef5a3b056c;hp=899d0083dba106ff0fa6c993ed6d21b5f63dde27;hpb=520cdc8260ea033f1c9f54b87d93fcb034ae8472;p=babeltrace.git diff --git a/src/lib/trace-ir/clock-snapshot.c b/src/lib/trace-ir/clock-snapshot.c index 899d0083..cbce39c1 100644 --- a/src/lib/trace-ir/clock-snapshot.c +++ b/src/lib/trace-ir/clock-snapshot.c @@ -63,7 +63,7 @@ struct bt_clock_snapshot *bt_clock_snapshot_new( bt_object_init_unique(&ret->base); ret->clock_class = clock_class; - bt_object_get_no_null_check(clock_class); + bt_object_get_ref_no_null_check(clock_class); bt_clock_class_freeze(clock_class); BT_LIB_LOGD("Created clock snapshot object: %!+k", ret); @@ -77,26 +77,18 @@ struct bt_clock_snapshot *bt_clock_snapshot_create( { struct bt_clock_snapshot *clock_snapshot = NULL; - BT_ASSERT(clock_class); + BT_ASSERT_DBG(clock_class); clock_snapshot = bt_object_pool_create_object(&clock_class->cs_pool); if (!clock_snapshot) { BT_LIB_LOGE_APPEND_CAUSE( "Cannot allocate one clock snapshot from clock class's clock snapshot pool: " "%![cc-]+K", clock_class); - goto error; + goto end; } if (G_LIKELY(!clock_snapshot->clock_class)) { clock_snapshot->clock_class = clock_class; - bt_object_get_no_null_check(clock_class); - } - - goto end; - -error: - if (clock_snapshot) { - bt_clock_snapshot_recycle(clock_snapshot); - clock_snapshot = NULL; + bt_object_get_ref_no_null_check(clock_class); } end: @@ -108,7 +100,7 @@ void bt_clock_snapshot_recycle(struct bt_clock_snapshot *clock_snapshot) { struct bt_clock_class *clock_class; - BT_ASSERT(clock_snapshot); + BT_ASSERT_DBG(clock_snapshot); BT_LIB_LOGD("Recycling clock snapshot: %!+k", clock_snapshot); /* @@ -135,7 +127,7 @@ void bt_clock_snapshot_recycle(struct bt_clock_snapshot *clock_snapshot) */ bt_clock_snapshot_reset(clock_snapshot); clock_class = clock_snapshot->clock_class; - BT_ASSERT(clock_class); + BT_ASSERT_DBG(clock_class); clock_snapshot->clock_class = NULL; bt_object_pool_recycle_object(&clock_class->cs_pool, clock_snapshot); bt_object_put_ref(clock_class);