summaryrefslogtreecommitdiff
path: root/avconv.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2012-05-17 12:42:03 +0200
committerAnton Khirnov <anton@khirnov.net>2012-05-17 19:37:58 +0200
commit01e98b1b006c67ab0948f3c1de65a94609fe79cf (patch)
treec28d1d18fcfb4cebd5076517e46f59126a54b9a0 /avconv.c
parent7d7b40f48a05af4483b31cdb8b4f1808b97b1f2f (diff)
avconv: fix behavior with -ss as an output option.
Don't return from poll_filters() immediately, there may be other frames and/or other streams to handle. Fixes a memleak.
Diffstat (limited to 'avconv.c')
-rw-r--r--avconv.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/avconv.c b/avconv.c
index 85ee6f7e25..07bb86d4d1 100644
--- a/avconv.c
+++ b/avconv.c
@@ -1704,8 +1704,10 @@ static int poll_filters(void)
AV_TIME_BASE_Q,
ost->st->codec->time_base);
- if (of->start_time && filtered_frame->pts < of->start_time)
- return 0;
+ if (of->start_time && filtered_frame->pts < of->start_time) {
+ avfilter_unref_buffer(picref);
+ continue;
+ }
switch (ost->filter->filter->inputs[0]->type) {
case AVMEDIA_TYPE_VIDEO: