On Fri, 17 Jun 2016, [email protected] wrote:
From: Jan Sebechlebsky <[email protected]>
Signed-off-by: Jan Sebechlebsky <[email protected]>
---
I've missed that - sorry, should be fixed in this patch.
[...]
static int open_slave(AVFormatContext *avf, char *slave, TeeSlave *tee_slave)
@@ -443,24 +442,26 @@ static int tee_write_header(AVFormatContext *avf)
TeeContext *tee = avf->priv_data;
unsigned nb_slaves = 0, i;
const char *filename = avf->filename;
- char *slaves[MAX_SLAVES];
+ char **slaves = NULL;
int ret;
while (*filename) {
- if (nb_slaves == MAX_SLAVES) {
- av_log(avf, AV_LOG_ERROR, "Maximum %d slave muxers reached.\n",
- MAX_SLAVES);
- ret = AVERROR_PATCHWELCOME;
- goto fail;
- }
- if (!(slaves[nb_slaves++] = av_get_token(&filename, slave_delim))) {
+ char *slave = av_get_token(&filename, slave_delim);
+ if (!slave) {
ret = AVERROR(ENOMEM);
goto fail;
}
+ ret = av_dynarray_add_nofree(&slaves, &nb_slaves, slave);
+ if (ret < 0)
+ goto fail;
Aren't you still leaking slave here on error?
Thanks,
Marton
_______________________________________________
ffmpeg-devel mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel