- if (bt_ctf_event_class_set_id(event_class,
- stream_class->next_event_id++)) {
- /* The event is already associated to a stream class */
- ret = -1;
+ /* Only set an event id if none was explicitly set before */
+ event_id = bt_ctf_event_class_get_id(event_class);
+ if (event_id < 0) {
+ if (bt_ctf_event_class_set_id(event_class,
+ stream_class->next_event_id++)) {
+ ret = -1;
+ goto end;
+ }
+ }
+
+ ret = bt_ctf_event_class_set_stream_class(event_class, stream_class);
+ if (ret) {