static
void unref_stream(struct bt_stream *stream)
{
- bt_put(stream);
+ bt_object_put_ref(stream);
}
static
void unref_packet(struct bt_packet *packet)
{
- bt_put(packet);
+ bt_object_put_ref(packet);
}
static
void unref_stream_class(struct bt_stream_class *stream_class)
{
- bt_put(stream_class);
+ bt_object_put_ref(stream_class);
}
static
field = bt_field_structure_get_field_by_name(payload, field_name);
end:
- bt_put(payload_class);
- bt_put(payload);
+ bt_object_put_ref(payload_class);
+ bt_object_put_ref(payload);
return field;
}
field = bt_field_structure_get_field_by_name(sec, field_name);
end:
- bt_put(sec_class);
- bt_put(sec);
+ bt_object_put_ref(sec_class);
+ bt_object_put_ref(sec);
return field;
}
error:
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
return ret;
}
error:
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
return ret;
}
error:
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
return ret;
}
error:
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
return ret;
}
error:
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
return ret;
}
BT_LOGE("Wrong type, expected sequence: field-name=\"%s\"", field_name);
goto error;
}
- BT_PUT(field_class);
+ BT_OBJECT_PUT_REF_AND_RESET(field_class);
seq_len = bt_field_sequence_get_length(field);
BT_ASSERT(seq_len);
field_name);
goto error;
}
- BT_PUT(seq_len);
+ BT_OBJECT_PUT_REF_AND_RESET(seq_len);
*build_id = g_new0(uint8_t, *build_id_len);
if (!*build_id) {
goto error;
}
- BT_PUT(seq_field);
+ BT_OBJECT_PUT_REF_AND_RESET(seq_field);
(*build_id)[i] = (uint8_t) tmp;
}
ret = 0;
g_free(*build_id);
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
return ret;
}
if (strcmp(str_value, "ust") != 0) {
goto end;
}
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
/* No tracer_name, no debug info */
field = bt_trace_get_environment_field_value_by_name(writer_trace,
if (strcmp(str_value, "lttng-ust") != 0) {
goto end;
}
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
debug_info = debug_info_create(debug_it->debug_info_component);
if (!debug_info) {
debug_info);
end:
- bt_put(field);
+ bt_object_put_ref(field);
return debug_info;
}
error:
int_ret = -1;
end:
- bt_put(stream_class);
- bt_put(writer_stream_class);
+ bt_object_put_ref(stream_class);
+ bt_object_put_ref(writer_stream_class);
return int_ret;
}
BT_LOGE_STR("Failed to synchronize the event classes.");
goto error;
}
- BT_PUT(stream);
- BT_PUT(writer_stream);
+ BT_OBJECT_PUT_REF_AND_RESET(stream);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream);
}
bt_trace_set_is_static(di_trace->writer_trace);
}
error:
- bt_put(writer_stream);
- bt_put(stream);
+ bt_object_put_ref(writer_stream);
+ bt_object_put_ref(stream);
}
static
BT_LOGE_STR("Failed to insert new stream.");
goto error;
}
- bt_get(writer_stream);
+ bt_object_get_ref(writer_stream);
ret = sync_event_classes(debug_it, stream, writer_stream);
if (ret) {
BT_LOGE_STR("Failed to synchronize event classes.");
goto error;
}
- BT_PUT(writer_stream);
- BT_PUT(stream);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream);
+ BT_OBJECT_PUT_REF_AND_RESET(stream);
}
/* Check if the trace is already static or register a listener. */
goto end;
error:
- BT_PUT(writer_trace);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_trace);
g_free(di_trace);
di_trace = NULL;
end:
- bt_put(stream);
- bt_put(writer_stream);
- bt_put(stream_class);
- bt_put(trace);
+ bt_object_put_ref(stream);
+ bt_object_put_ref(writer_stream);
+ bt_object_put_ref(stream_class);
+ bt_object_put_ref(trace);
return di_trace;
}
goto end;
error:
- BT_PUT(writer_packet);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_packet);
end:
return writer_packet;
}
if (!ip_field) {
goto end;
}
- BT_PUT(ip_field);
+ BT_OBJECT_PUT_REF_AND_RESET(ip_field);
debug_field_class = bt_field_class_structure_get_field_class_by_name(
writer_event_context_class,
goto end;
error:
- BT_PUT(debug_field_class);
+ BT_OBJECT_PUT_REF_AND_RESET(debug_field_class);
ret = -1;
end:
- bt_put(src_field_class);
- bt_put(func_field_class);
- bt_put(bin_field_class);
- bt_put(debug_field_class);
+ bt_object_put_ref(src_field_class);
+ bt_object_put_ref(func_field_class);
+ bt_object_put_ref(bin_field_class);
+ bt_object_put_ref(debug_field_class);
return ret;
}
ret = bt_field_class_structure_add_field(writer_event_context_class,
field_class, field_name);
- BT_PUT(field_class);
+ BT_OBJECT_PUT_REF_AND_RESET(field_class);
if (ret) {
BT_LOGE("Failed to add a field to the event-context: field-name=\"%s\"",
field_name);
BT_LOGE_STR("Failed to set packet_context type.");
goto error;
}
- BT_PUT(type);
+ BT_OBJECT_PUT_REF_AND_RESET(type);
}
type = bt_stream_class_get_event_header_type(stream_class);
BT_LOGE_STR("Failed to set event_header type.");
goto error;
}
- BT_PUT(type);
+ BT_OBJECT_PUT_REF_AND_RESET(type);
}
type = bt_stream_class_get_event_context_class(stream_class);
BT_LOGE_STR("Failed to create debug_info event_context type.");
goto error;
}
- BT_PUT(type);
+ BT_OBJECT_PUT_REF_AND_RESET(type);
ret_int = bt_stream_class_set_event_context_class(
writer_stream_class, writer_event_context_class);
BT_LOGE_STR("Failed to set event_context type.");
goto error;
}
- BT_PUT(writer_event_context_class);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_event_context_class);
}
goto end;
error:
- BT_PUT(writer_stream_class);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream_class);
end:
- bt_put(writer_event_context_class);
- bt_put(type);
+ bt_object_put_ref(writer_event_context_class);
+ bt_object_put_ref(type);
return writer_stream_class;
}
existing_clock_class = bt_trace_get_clock_class_by_name(
writer_trace, bt_clock_class_get_name(clock_class));
- bt_put(existing_clock_class);
+ bt_object_put_ref(existing_clock_class);
if (existing_clock_class) {
- bt_put(clock_class);
+ bt_object_put_ref(clock_class);
continue;
}
ret = bt_trace_add_clock_class(writer_trace, clock_class);
- BT_PUT(clock_class);
+ BT_OBJECT_PUT_REF_AND_RESET(clock_class);
if (ret != 0) {
BT_LOGE_STR("Failed to add clock_class.");
goto error;
goto error;
}
writer_trace = di_trace->writer_trace;
- bt_get(writer_trace);
+ bt_object_get_ref(writer_trace);
writer_stream_class = copy_stream_class_debug_info(debug_it->err, stream_class,
writer_trace, debug_it->debug_info_component);
goto end;
error:
- BT_PUT(writer_stream_class);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream_class);
end:
- bt_put(trace);
- bt_put(writer_trace);
+ bt_object_put_ref(trace);
+ bt_object_put_ref(writer_trace);
return writer_stream_class;
}
goto error;
}
}
- bt_get(writer_stream_class);
+ bt_object_get_ref(writer_stream_class);
id = bt_stream_get_id(stream);
if (id < 0) {
goto end;
error:
- BT_PUT(writer_stream);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream);
end:
- bt_put(stream_class);
- bt_put(writer_stream_class);
+ bt_object_put_ref(stream_class);
+ bt_object_put_ref(writer_stream_class);
return writer_stream;
}
di_trace = (struct debug_info_trace *) g_hash_table_lookup(
debug_it->trace_map, (gpointer) trace);
- BT_PUT(stream_class);
- BT_PUT(trace);
+ BT_OBJECT_PUT_REF_AND_RESET(stream_class);
+ BT_OBJECT_PUT_REF_AND_RESET(trace);
return di_trace;
}
BT_LOGE_STR("Failed to find existing stream.");
goto error;
}
- bt_get(writer_stream);
+ bt_object_get_ref(writer_stream);
goto end;
error:
- BT_PUT(writer_stream);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream);
end:
- bt_put(stream_class);
+ bt_object_put_ref(stream_class);
return writer_stream;
}
writer_packet = lookup_packet(debug_it, packet, di_trace);
if (writer_packet) {
g_hash_table_remove(di_trace->packet_map, packet);
- BT_PUT(writer_packet);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_packet);
}
writer_packet = insert_new_packet(debug_it, packet, writer_stream,
BT_LOGE_STR("Failed to copy packet context.");
goto error;
}
- BT_PUT(packet_context);
+ BT_OBJECT_PUT_REF_AND_RESET(packet_context);
}
- bt_get(writer_packet);
+ bt_object_get_ref(writer_packet);
goto end;
error:
end:
- bt_put(packet_context);
- bt_put(writer_stream);
- bt_put(stream);
+ bt_object_put_ref(packet_context);
+ bt_object_put_ref(writer_stream);
+ bt_object_put_ref(stream);
return writer_packet;
}
BT_LOGE_STR("Failed to find existing packet.");
goto end;
}
- bt_get(writer_packet);
+ bt_object_get_ref(writer_packet);
g_hash_table_remove(di_trace->packet_map, packet);
end:
- bt_put(stream);
+ bt_object_put_ref(stream);
return writer_packet;
}
if (!writer_stream) {
writer_stream = insert_new_stream(debug_it, stream, di_trace);
}
- bt_get(writer_stream);
+ bt_object_get_ref(writer_stream);
goto end;
error:
- BT_PUT(writer_stream);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream);
end:
return writer_stream;
}
* Take the ref on the stream and keep it until the notification
* is created.
*/
- bt_get(writer_stream);
+ bt_object_get_ref(writer_stream);
state = g_hash_table_lookup(di_trace->stream_states, stream);
if (*state != DEBUG_INFO_ACTIVE_STREAM) {
goto end;
error:
- BT_PUT(writer_stream);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_stream);
end:
return writer_stream;
field_name);
goto error;
}
- BT_PUT(field_class);
+ BT_OBJECT_PUT_REF_AND_RESET(field_class);
field = bt_field_structure_get_field_by_index(debug_field, i);
if (!strcmp(field_name, "bin")) {
ret = bt_field_string_set_value(field, "");
}
}
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
if (ret) {
BT_LOGE("Failed to set value in debug-info struct: field-name=\"%s\"",
field_name);
error:
ret = -1;
end:
- bt_put(field_class);
- bt_put(field);
- bt_put(debug_field_class);
+ bt_object_put_ref(field_class);
+ bt_object_put_ref(field);
+ bt_object_put_ref(debug_field_class);
return ret;
}
BT_LOGE_STR("Failed to set debug_info field.");
goto error;
}
- BT_PUT(debug_field);
+ BT_OBJECT_PUT_REF_AND_RESET(debug_field);
} else {
copy_field = bt_field_copy(field);
if (!copy_field) {
field_name);
goto error;
}
- BT_PUT(copy_field);
+ BT_OBJECT_PUT_REF_AND_RESET(copy_field);
}
- BT_PUT(field_class);
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field_class);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
}
ret = 0;
error:
ret = -1;
end:
- bt_put(event_context_class);
- bt_put(writer_event_context_class);
- bt_put(writer_event_context);
- bt_put(field);
- bt_put(copy_field);
- bt_put(debug_field);
- bt_put(field_class);
+ bt_object_put_ref(event_context_class);
+ bt_object_put_ref(writer_event_context_class);
+ bt_object_put_ref(writer_event_context);
+ bt_object_put_ref(field);
+ bt_object_put_ref(copy_field);
+ bt_object_put_ref(debug_field);
+ bt_object_put_ref(field_class);
return ret;
}
/* FIXME multi-clock? */
clock_class = bt_trace_get_clock_class_by_index(trace, 0);
- bt_put(trace);
+ bt_object_put_ref(trace);
end:
return clock_class;
goto end;
end:
- bt_put(stream_class);
- bt_put(event_class);
+ bt_object_put_ref(stream_class);
+ bt_object_put_ref(event_class);
return clock_class;
}
error:
ret = -1;
end:
- bt_put(clock_class);
- bt_put(clock_value);
+ bt_object_put_ref(clock_class);
+ bt_object_put_ref(clock_value);
return ret;
}
BT_LOGE_STR("Failed to copy event header.");
goto error;
}
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
}
/* Optional field, so it can fail silently. */
BT_LOGE_STR("Failed to debug_info stream event context.");
goto error;
}
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
}
/* Optional field, so it can fail silently. */
BT_LOGE_STR("Failed to set event_context.");
goto error;
}
- BT_PUT(copy_field);
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(copy_field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
}
field = bt_event_get_event_payload(event);
BT_LOGE_STR("Failed to set event payload.");
goto error;
}
- BT_PUT(copy_field);
+ BT_OBJECT_PUT_REF_AND_RESET(copy_field);
}
- BT_PUT(field);
+ BT_OBJECT_PUT_REF_AND_RESET(field);
goto end;
error:
- BT_PUT(writer_event);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_event);
end:
- bt_put(copy_field);
- bt_put(field);
+ bt_object_put_ref(copy_field);
+ bt_object_put_ref(field);
return writer_event;
}
BT_LOGE_STR("Failed to find existing stream_class.");
goto error;
}
- bt_get(writer_stream_class);
+ bt_object_get_ref(writer_stream_class);
writer_trace = bt_stream_class_get_trace(writer_stream_class);
BT_ASSERT(writer_trace);
writer_event_class = get_event_class(debug_it,
BT_LOGE_STR("Failed to find existing packet.");
goto error;
}
- bt_get(writer_packet);
+ bt_object_get_ref(writer_packet);
int_ret = bt_event_set_packet(writer_event, writer_packet);
if (int_ret < 0) {
goto end;
error:
- BT_PUT(writer_event);
+ BT_OBJECT_PUT_REF_AND_RESET(writer_event);
end:
- bt_put(stream);
- bt_put(writer_trace);
- bt_put(writer_packet);
- bt_put(packet);
- bt_put(writer_event_class);
- bt_put(writer_stream_class);
- bt_put(stream_class);
- bt_put(event_class);
+ bt_object_put_ref(stream);
+ bt_object_put_ref(writer_trace);
+ bt_object_put_ref(writer_packet);
+ bt_object_put_ref(packet);
+ bt_object_put_ref(writer_event_class);
+ bt_object_put_ref(writer_stream_class);
+ bt_object_put_ref(stream_class);
+ bt_object_put_ref(event_class);
return writer_event;
}