MT#56447 switch to early return

... for betterer code. Functional no-op.

Change-Id: I052255ef1a6a6907ef6f232f5c9d68099a86572e
pull/1611/head
Richard Fuchs 2 years ago
parent 16c99e9d07
commit 893dad702d

@ -720,79 +720,80 @@ static const char *janus_videoroom_configure(struct websocket_message *wm, struc
AUTO_CLEANUP(str sdp_out, str_free_dup) = STR_NULL;
ret = sdp_create(&sdp_out, ml, &flags);
if (!ret) {
save_last_sdp(ml, &sdp_in, &parsed, &streams);
*jsep_sdp_out = sdp_out;
sdp_out = STR_NULL; // ownership passed to output
if (ret)
return "Publish error";
*jsep_type_out = "answer";
save_last_sdp(ml, &sdp_in, &parsed, &streams);
*jsep_sdp_out = sdp_out;
sdp_out = STR_NULL; // ownership passed to output
*successp = "event";
json_builder_set_member_name(builder, "videoroom");
json_builder_add_string_value(builder, "event");
json_builder_set_member_name(builder, "room");
json_builder_add_int_value(builder, room_id);
json_builder_set_member_name(builder, "configured");
json_builder_add_string_value(builder, "ok");
json_builder_set_member_name(builder, "streams");
json_builder_begin_array(builder);
const char *a_codec = NULL, *v_codec = NULL;
for (GList *l = ml->medias.head; l; l = l->next) {
struct call_media *media = l->data;
const char *codec = NULL;
for (GList *k = media->codecs.codec_prefs.head; k; k = k->next) {
struct rtp_payload_type *pt = k->data;
codec = pt->encoding.s;
// XXX check codec support?
break;
}
*jsep_type_out = "answer";
json_builder_begin_object(builder);
*successp = "event";
json_builder_set_member_name(builder, "videoroom");
json_builder_add_string_value(builder, "event");
json_builder_set_member_name(builder, "room");
json_builder_add_int_value(builder, room_id);
json_builder_set_member_name(builder, "configured");
json_builder_add_string_value(builder, "ok");
json_builder_set_member_name(builder, "type");
json_builder_add_string_value(builder, media->type.s);
json_builder_set_member_name(builder, "mindex");
json_builder_add_int_value(builder, media->index - 1);
json_builder_set_member_name(builder, "mid");
if (media->media_id.s)
json_builder_add_string_value(builder, media->media_id.s);
else
json_builder_add_null_value(builder);
json_builder_set_member_name(builder, "codec");
if (codec)
json_builder_add_string_value(builder, codec);
else
json_builder_add_null_value(builder);
json_builder_set_member_name(builder, "streams");
json_builder_begin_array(builder);
json_builder_end_object(builder);
const char *a_codec = NULL, *v_codec = NULL;
if (media->type_id == MT_AUDIO)
a_codec = codec;
else if (media->type_id == MT_VIDEO)
v_codec = codec;
for (GList *l = ml->medias.head; l; l = l->next) {
struct call_media *media = l->data;
const char *codec = NULL;
for (GList *k = media->codecs.codec_prefs.head; k; k = k->next) {
struct rtp_payload_type *pt = k->data;
codec = pt->encoding.s;
// XXX check codec support?
break;
}
json_builder_end_array(builder);
json_builder_begin_object(builder);
json_builder_set_member_name(builder, "audio_codec");
if (a_codec)
json_builder_add_string_value(builder, a_codec);
json_builder_set_member_name(builder, "type");
json_builder_add_string_value(builder, media->type.s);
json_builder_set_member_name(builder, "mindex");
json_builder_add_int_value(builder, media->index - 1);
json_builder_set_member_name(builder, "mid");
if (media->media_id.s)
json_builder_add_string_value(builder, media->media_id.s);
else
json_builder_add_null_value(builder);
json_builder_set_member_name(builder, "video_codec");
if (v_codec)
json_builder_add_string_value(builder, v_codec);
json_builder_set_member_name(builder, "codec");
if (codec)
json_builder_add_string_value(builder, codec);
else
json_builder_add_null_value(builder);
janus_notify_publishers(wm, room_id, handle->id);
json_builder_end_object(builder);
if (media->type_id == MT_AUDIO)
a_codec = codec;
else if (media->type_id == MT_VIDEO)
v_codec = codec;
}
json_builder_end_array(builder);
json_builder_set_member_name(builder, "audio_codec");
if (a_codec)
json_builder_add_string_value(builder, a_codec);
else
json_builder_add_null_value(builder);
json_builder_set_member_name(builder, "video_codec");
if (v_codec)
json_builder_add_string_value(builder, v_codec);
else
json_builder_add_null_value(builder);
janus_notify_publishers(wm, room_id, handle->id);
return NULL;
}

Loading…
Cancel
Save