From: ronag Date: Mon, 26 Mar 2012 18:53:59 +0000 (+0000) Subject: git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches... X-Git-Tag: 2.1.0_Beta1~568 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=76071d475d8e05ffcf8ce5af958f20139e323299;p=casparcg git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches/2.1.0@2757 362d55ac-95cf-4e76-9f9a-cbaa9c17b72d --- diff --git a/core/producer/transition/transition_producer.cpp b/core/producer/transition/transition_producer.cpp index da8390736..ff167bcdb 100644 --- a/core/producer/transition/transition_producer.cpp +++ b/core/producer/transition/transition_producer.cpp @@ -70,13 +70,8 @@ public: draw_frame receive_impl() override { if(current_frame_ >= info_.duration) - { - source_producer_ = core::frame_producer::empty(); - return dest_producer_->receive(); - } - - ++current_frame_; - + return dest_producer_->receive(); + auto dest = draw_frame::empty(); auto source = draw_frame::empty(); @@ -92,7 +87,12 @@ public: source = source_producer_->receive(); if(source == core::draw_frame::late()) source = source_producer_->last_frame(); - }); + }); + + current_frame_ += 1; + + if(current_frame_ >= info_.duration) + source_producer_ = core::frame_producer::empty(); event_subject_ << monitor::event("transition/frame") % current_frame_ % info_.duration << monitor::event("transition/type") % [&]() -> std::string