X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Flayer_duplicate.cpp;h=a9d2f8598030b101cc365133e56350548c88c4f8;hb=34d470416675482ca866146fd6b3201a19f8e4e6;hp=922704a989b502700e601f3069059c4e7fc32542;hpb=268b63024cb094deda14ea7ae1f30c98dd4495cc;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/layer_duplicate.cpp b/synfig-core/trunk/src/synfig/layer_duplicate.cpp index 922704a..a9d2f85 100644 --- a/synfig-core/trunk/src/synfig/layer_duplicate.cpp +++ b/synfig-core/trunk/src/synfig/layer_duplicate.cpp @@ -173,6 +173,7 @@ Layer_Duplicate::accelerated_render(Context context,Surface *surface,int quality Color::BlendMethod blend_method(get_blend_method()); int steps = duplicate_param->count_steps(time_cur); + Mutex::Lock lock(mutex); duplicate_param->reset_index(time_cur); do { @@ -185,12 +186,10 @@ Layer_Duplicate::accelerated_render(Context context,Surface *surface,int quality Surface::alpha_pen apen(surface->begin()); apen.set_alpha(1.0); // \todo have a checkbox allowing use of 'behind' to reverse the order? - apen.set_blend_method(blend_method); + apen.set_blend_method(i ? blend_method : Color::BLEND_COMPOSITE); tmp.blit_to(apen); i++; } while (duplicate_param->step(time_cur)); - duplicate_param->reset_index(time_cur); - return true; }