From 777cae1b0b3fd032284b9b13a609ad49fd936766 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 27 Feb 2003 23:47:40 +0000 Subject: [PATCH] Schedule next chain on interrupt Original commit message from CVS: Schedule next chain on interrupt --- gst/schedulers/gstoptimalscheduler.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gst/schedulers/gstoptimalscheduler.c b/gst/schedulers/gstoptimalscheduler.c index caea392a7a..28d9974674 100644 --- a/gst/schedulers/gstoptimalscheduler.c +++ b/gst/schedulers/gstoptimalscheduler.c @@ -978,6 +978,7 @@ gst_opt_scheduler_get_wrapper (GstPad *srcpad) group = unref_group (group); /* group is gone */ if (group == NULL) { + GST_INFO (GST_CAT_SCHEDULING, "group %p destroyed, sending interrupt", group); return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT)); } } @@ -1755,6 +1756,10 @@ gst_opt_scheduler_iterate (GstScheduler *sched) if (osched->state == GST_OPT_SCHEDULER_STATE_ERROR) { GST_INFO (GST_CAT_SCHEDULING, "scheduler %p is in error", sched); break; + } + else if (osched->state == GST_OPT_SCHEDULER_STATE_INTERRUPTED) { + GST_INFO (GST_CAT_SCHEDULING, "scheduler %p is interrupted, continue with next chain", sched); + osched->state = GST_OPT_SCHEDULER_STATE_RUNNING; } GST_INFO (GST_CAT_SCHEDULING, "iterate scheduled %p", chain);