Add proper deallocations in the error paths to avoid potential memory leaks.
Fixes: e7dfaf16a4 ("libavfilter: example audio filtering program")
Signed-off-by: Jiasheng Jiang <[email protected]>
---
doc/examples/filter_audio.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/doc/examples/filter_audio.c b/doc/examples/filter_audio.c
index 02222f5914..ad77bf1f89 100644
--- a/doc/examples/filter_audio.c
+++ b/doc/examples/filter_audio.c
@@ -294,6 +294,7 @@ int main(int argc, char *argv[])
md5 = av_md5_alloc();
if (!md5) {
+ av_frame_free(&frame);
fprintf(stderr, "Error allocating the MD5 context\n");
return 1;
}
@@ -301,8 +302,10 @@ int main(int argc, char *argv[])
/* Set up the filtergraph. */
err = init_filter_graph(&graph, &src, &sink);
if (err < 0) {
+ av_frame_free(&frame);
+ av_freep(&md5);
fprintf(stderr, "Unable to init filter graph:");
- goto fail;
+ return 1;
}
/* the main filtering loop */
@@ -353,6 +356,10 @@ int main(int argc, char *argv[])
return 0;
fail:
+ avfilter_graph_free(&graph);
+ av_frame_free(&frame);
+ av_freep(&md5);
+
fprintf(stderr, "%s\n", av_err2str(err));
return 1;
}
--
2.25.1
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".