summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-07-07 13:24:11 +0200
committerwm4 <wm4@nowhere>2015-07-07 13:24:11 +0200
commit459124f66f7df6dc109c8399ee3d78424c288321 (patch)
tree3c45e7d5018aa044691bfb249e76293d20d6556d
parentdaf32e2d2d618dd45c4577c4c116865976556d96 (diff)
downloadmpv-459124f66f7df6dc109c8399ee3d78424c288321.tar.bz2
mpv-459124f66f7df6dc109c8399ee3d78424c288321.tar.xz
af: fix behavior with pathologic filter chains
Some filter chains require a huge number of auto-inserted conversion filters. There is an overly stupid safeguard against infinite filter insertions, which counts the number of conversion filters inserted. This triggered accidentally in this case. Fix by resetting this counter after a non-conversion filter was successfully configured.
-rw-r--r--audio/filter/af.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/audio/filter/af.c b/audio/filter/af.c
index f37a47697e..bccdcefde0 100644
--- a/audio/filter/af.c
+++ b/audio/filter/af.c
@@ -519,6 +519,8 @@ static int af_reinit(struct af_stream *s)
af->info->name, rv);
goto error;
}
+ if (af && !af->auto_inserted)
+ retry = 0;
}
/* Set previously unset fields in s->output to those of the filter chain