ffmpeg | branch: master | Marvin Scholz <epira...@gmail.com> | Thu Jan 30 00:55:48 2025 +0100| [2c3ac6e0faab98651085bbda825130c4b98ee615] | committer: Marvin Scholz
lavfi/f_sendcmd: add helper to clear Command Makes clearing the Command more explicit and consistent. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2c3ac6e0faab98651085bbda825130c4b98ee615 --- libavfilter/f_sendcmd.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/libavfilter/f_sendcmd.c b/libavfilter/f_sendcmd.c index 9201fb5381..fc21a88bf4 100644 --- a/libavfilter/f_sendcmd.c +++ b/libavfilter/f_sendcmd.c @@ -138,6 +138,18 @@ static void skip_comments(const char **buf) #define COMMAND_DELIMS " \f\t\n\r,;" +/** + * Clears fields and frees the buffers used by @p cmd + */ +static void clear_command(Command *cmd) +{ + cmd->flags = 0; + cmd->index = 0; + av_freep(&cmd->target); + av_freep(&cmd->command); + av_freep(&cmd->arg); +} + static int parse_command(Command *cmd, int cmd_count, int interval_count, const char **buf, void *log_ctx) { @@ -217,9 +229,7 @@ static int parse_command(Command *cmd, int cmd_count, int interval_count, return 1; fail: - av_freep(&cmd->target); - av_freep(&cmd->command); - av_freep(&cmd->arg); + clear_command(cmd); return ret; } @@ -471,9 +481,7 @@ static av_cold void uninit(AVFilterContext *ctx) Interval *interval = &s->intervals[i]; for (j = 0; j < interval->nb_commands; j++) { Command *cmd = &interval->commands[j]; - av_freep(&cmd->target); - av_freep(&cmd->command); - av_freep(&cmd->arg); + clear_command(cmd); } av_freep(&interval->commands); } _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".