+ di_trace = g_new0(struct debug_info_trace, 1);
+ if (!di_trace) {
+ fprintf(debug_it->err, "[error] %s in %s:%d\n", __func__,
+ __FILE__, __LINE__);
+ goto error;
+ }
+
+ di_trace->trace = trace;
+ di_trace->writer_trace = writer_trace;
+ di_trace->debug_info_component = debug_it->debug_info_component;
+ di_trace->stream_map = g_hash_table_new_full(g_direct_hash,
+ g_direct_equal, NULL, (GDestroyNotify) unref_stream);
+ di_trace->stream_class_map = g_hash_table_new_full(g_direct_hash,
+ g_direct_equal, NULL, (GDestroyNotify) unref_stream_class);
+ di_trace->packet_map = g_hash_table_new_full(g_direct_hash,
+ g_direct_equal, NULL, (GDestroyNotify) unref_packet);
+ di_trace->trace_debug_map = g_hash_table_new_full(g_direct_hash,
+ g_direct_equal, NULL, (GDestroyNotify) unref_debug_info);
+
+ g_hash_table_insert(debug_it->trace_map, (gpointer) trace, di_trace);
+