} \
}
- MISSING_ERR(sconf->floating, "Floating point decoding", -1);
- MISSING_ERR(sconf->rlslms, "Adaptive RLS-LMS prediction", -1);
- MISSING_ERR(sconf->chan_sort, "Channel sorting", 0);
+ MISSING_ERR(sconf->floating, "Floating point decoding", AVERROR_PATCHWELCOME);
+ MISSING_ERR(sconf->rlslms, "Adaptive RLS-LMS prediction", AVERROR_PATCHWELCOME);
+ MISSING_ERR(sconf->chan_sort, "Channel sorting", 0);
return error;
}
}
} else { // multi-channel coding
ALSBlockData bd = { 0 };
- int b;
+ int b, ret;
int *reverted_channels = ctx->reverted_channels;
unsigned int offset = 0;
bd.raw_samples = ctx->raw_samples[c] + offset;
bd.raw_other = NULL;
- read_block(ctx, &bd);
- if (read_channel_data(ctx, ctx->chan_data[c], c))
- return -1;
+ if ((ret = read_block(ctx, &bd)) < 0)
+ return ret;
+ if ((ret = read_channel_data(ctx, ctx->chan_data[c], c)) < 0)
+ return ret;
}
for (c = 0; c < avctx->channels; c++)
bd.lpc_cof = ctx->lpc_cof[c];
bd.quant_cof = ctx->quant_cof[c];
bd.raw_samples = ctx->raw_samples[c] + offset;
- decode_block(ctx, &bd);
+ if ((ret = decode_block(ctx, &bd)) < 0)
+ return ret;
}
memset(reverted_channels, 0, avctx->channels * sizeof(*reverted_channels));
ctx->cur_frame_length = sconf->frame_length;
// decode the frame data
- if ((invalid_frame = read_frame_data(ctx, ra_frame) < 0))
+ if ((invalid_frame = read_frame_data(ctx, ra_frame)) < 0)
av_log(ctx->avctx, AV_LOG_WARNING,
"Reading frame data failed. Skipping RA unit.\n");