summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-05-14 21:02:56 +0200
committerwm4 <wm4@nowhere>2014-05-14 21:02:56 +0200
commitdaf4898668d9753c753d9cd3f20ed2051dddeb39 (patch)
tree16f743f189e3b4d7b9370587a8a626dc30fa01c5
parent6dec78e4754caef6a3ea88ab0a0926cb4d0d7f94 (diff)
downloadmpv-daf4898668d9753c753d9cd3f20ed2051dddeb39.tar.bz2
mpv-daf4898668d9753c753d9cd3f20ed2051dddeb39.tar.xz
vf_vapoursynth: avoid unnecessary waiting
It could in theory happen that the filter loop will enter a blocking wait, even though it could make progress by emptying the list of already-filtered images. I'm not quite sure if this could actually cause a real issue - probably not.
-rw-r--r--video/filter/vf_vapoursynth.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/video/filter/vf_vapoursynth.c b/video/filter/vf_vapoursynth.c
index 4885ff26bc..c63e648603 100644
--- a/video/filter/vf_vapoursynth.c
+++ b/video/filter/vf_vapoursynth.c
@@ -261,7 +261,7 @@ static int filter_ext(struct vf_instance *vf, struct mp_image *mpi)
pthread_cond_broadcast(&p->wakeup);
}
- if (p->requested[0] && p->requested[0] != &dummy_img) {
+ while (p->requested[0] && p->requested[0] != &dummy_img) {
struct mp_image *out = p->requested[0];
if (out->pts != MP_NOPTS_VALUE) {
double duration = out->pts;