X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fcontext.cpp;h=12f464f9c5d541cf1ed25c9a842cdc58eb8002b7;hb=470708cb3278175cd21694d2317f92f83bbd28cd;hp=9ac1020df4d203ac2b3936458a36a131f549e7fc;hpb=88622a07ec1a494b56618cbbb51cbef2fbfda928;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/context.cpp b/synfig-core/trunk/src/synfig/context.cpp index 9ac1020..12f464f 100644 --- a/synfig-core/trunk/src/synfig/context.cpp +++ b/synfig-core/trunk/src/synfig/context.cpp @@ -319,9 +319,13 @@ Context::set_time(Time time)const Context context(*this); while(!(context)->empty()) { - // If this layer is active, then go - // ahead and break out of the loop - if((*context)->active() && !(*context)->dirty_time_.is_equal(time)) + // If this layer is active, and + // it either isn't already set to the given time or + // it's a time loop layer, + // then break out of the loop and set its time + if((*context)->active() && + (!(*context)->dirty_time_.is_equal(time) || + (*context)->get_name() == "timeloop")) break; // Otherwise, we want to keep searching