{
if (fc->first_stream_chunk < 0 || fc->current_slice_num
== fc->fcp->slices_per_group + fc->num_extra_slices) {
- if (!setup_next_fec_group(fc, vsst))
- return 0;
+ int ret = setup_next_fec_group(fc, vsst);
+ if (ret <= 0)
+ return ret;
}
write_fec_header(fc, vsst);
fec_encode(fc->parms, fc->src_data, fc->enc_buf + FEC_HEADER_SIZE,
list_for_each_entry_safe(fc, tmp_fc, &fec_client_list, node) {
if (!next_slice_is_due(fc, NULL))
continue;
- if (!compute_next_fec_slice(fc, vsst))
+ if (compute_next_fec_slice(fc, vsst) <= 0)
continue;
PARA_DEBUG_LOG("sending %d:%d (%u bytes)\n", fc->group.num,
fc->current_slice_num, fc->fcp->max_slice_bytes);