On 21.11.2014 00:47, Lukasz Marek wrote:
Signed-off-by: Lukasz Marek <[email protected]> --- ffserver.c | 2 +- ffserver_config.c | 18 +++++++++++++++++- ffserver_config.h | 2 ++ 3 files changed, 20 insertions(+), 2 deletions(-)diff --git a/ffserver.c b/ffserver.c index 933eb0e..40a5faa 100644 --- a/ffserver.c +++ b/ffserver.c @@ -3660,7 +3660,7 @@ static void handle_child_exit(int sig) if (uptime < 30) /* Turn off any more restarts */ - feed->child_argv = 0; + ffserver_free_child_args(&feed->child_argv); } } } diff --git a/ffserver_config.c b/ffserver_config.c index 02c8431..a235142 100644 --- a/ffserver_config.c +++ b/ffserver_config.c @@ -31,6 +31,8 @@ #include "cmdutils.h" #include "ffserver_config.h" +#define MAX_CHILD_ARGS 64 + static int ffserver_save_avoption(AVCodecContext *ctx, const char *opt, const char *arg, AVDictionary **dict, int type, FFServerConfig *config, int line_num); static void vreport_config_error(const char *filename, int line_num, int log_level, @@ -603,7 +605,7 @@ static int ffserver_parse_config_feed(FFServerConfig *config, const char *cmd, c if (!av_strcasecmp(cmd, "Launch")) { int i; - feed->child_argv = av_mallocz(64 * sizeof(char *)); + feed->child_argv = av_mallocz_array(MAX_CHILD_ARGS, sizeof(char *)); if (!feed->child_argv) return AVERROR(ENOMEM); for (i = 0; i < 62; i++) {
Right after submit I notice this hardcoded 62 so I changed locally to MAX_CHILD_ARGS - 2 :]
_______________________________________________ ffmpeg-devel mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
