Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate
@ 2023-12-01 16:06 Paul B Mahol
  2023-12-03 15:44 ` Paul B Mahol
  2023-12-06 13:13 ` Nicolas George
  0 siblings, 2 replies; 4+ messages in thread
From: Paul B Mahol @ 2023-12-01 16:06 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

[-- Attachment #1: Type: text/plain, Size: 10 bytes --]

Attached.

[-- Attachment #2: 0001-avfilter-avfilter-fix-OOM-case-for-default-activate.patch --]
[-- Type: text/x-patch, Size: 1266 bytes --]

From 2ea2a0df61cbd5519a1c1e88be27a3f8eb883aac Mon Sep 17 00:00:00 2001
From: Paul B Mahol <onemda@gmail.com>
Date: Fri, 1 Dec 2023 16:59:07 +0100
Subject: [PATCH] avfilter/avfilter: fix OOM case for default activate

Fixes OOM when caller keeps adding frames into filtergraph
that reached EOF by other means, for example EOF is signalled
by other filter in filtergraph or by buffersink.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
---
 libavfilter/avfilter.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index ab7782862a..bde1c33d07 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -1167,6 +1167,16 @@ static int ff_filter_activate_default(AVFilterContext *filter)
 {
     unsigned i;
 
+    for (i = 0; i < filter->nb_outputs; i++) {
+        int ret = filter->outputs[i]->status_in;
+
+        if (ret) {
+            for (int j = 0; j < filter->nb_inputs; j++)
+                ff_inlink_set_status(filter->inputs[j], ret);
+            return 0;
+        }
+    }
+
     for (i = 0; i < filter->nb_inputs; i++) {
         if (samples_ready(filter->inputs[i], filter->inputs[i]->min_samples)) {
             return ff_filter_frame_to_filter(filter->inputs[i]);
-- 
2.42.1


[-- Attachment #3: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate
  2023-12-01 16:06 [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate Paul B Mahol
@ 2023-12-03 15:44 ` Paul B Mahol
  2023-12-04  8:18   ` Nicolas George
  2023-12-06 13:13 ` Nicolas George
  1 sibling, 1 reply; 4+ messages in thread
From: Paul B Mahol @ 2023-12-03 15:44 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Will apply soon.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate
  2023-12-03 15:44 ` Paul B Mahol
@ 2023-12-04  8:18   ` Nicolas George
  0 siblings, 0 replies; 4+ messages in thread
From: Nicolas George @ 2023-12-04  8:18 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Paul B Mahol (12023-12-03):
> Will apply soon.

<sigh> Must you really act like an asshole each time? You will wait for
review.

-- 
  Nicolas George
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate
  2023-12-01 16:06 [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate Paul B Mahol
  2023-12-03 15:44 ` Paul B Mahol
@ 2023-12-06 13:13 ` Nicolas George
  1 sibling, 0 replies; 4+ messages in thread
From: Nicolas George @ 2023-12-06 13:13 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Paul B Mahol (12023-12-01):
> From 2ea2a0df61cbd5519a1c1e88be27a3f8eb883aac Mon Sep 17 00:00:00 2001
> From: Paul B Mahol <onemda@gmail.com>
> Date: Fri, 1 Dec 2023 16:59:07 +0100
> Subject: [PATCH] avfilter/avfilter: fix OOM case for default activate
> 
> Fixes OOM when caller keeps adding frames into filtergraph
> that reached EOF by other means, for example EOF is signalled
> by other filter in filtergraph or by buffersink.
> 
> Signed-off-by: Paul B Mahol <onemda@gmail.com>
> ---
>  libavfilter/avfilter.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)

Looks correct. Good catch.

I am assuming it is enough to fix the issue you wanted to fix by turning
buffersrc to activate. If not, please share the test case you use.

-- 
  Nicolas George
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-12-06 13:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-01 16:06 [FFmpeg-devel] [PATCH] avfilter/avfilter: fix OOM case for default activate Paul B Mahol
2023-12-03 15:44 ` Paul B Mahol
2023-12-04  8:18   ` Nicolas George
2023-12-06 13:13 ` Nicolas George

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git