int i, stream_id;
gpointer *event_id_ptr;
unsigned long event_id;
- struct trace_collection *tc = iter->parent.ctx->tc;
+ struct trace_collection *tc;
+ if (!iter || !callback)
+ return -EINVAL;
+
+ tc = iter->parent.ctx->tc;
for (i = 0; i < tc->array->len; i++) {
struct ctf_trace *tin;
struct trace_descriptor *td_read;
enum bt_cb_ret ret;
struct bt_ctf_event ctf_data;
+ assert(iter && stream);
+
ret = extract_ctf_stream_event(stream, &ctf_data);
/* process all events callback first */