Don't set_time() twice for the current canvas.
authordooglus <dooglus@1f10aa63-cdf2-0310-b900-c93c546f37ac>
Sat, 13 Oct 2007 03:05:29 +0000 (03:05 +0000)
committerdooglus <dooglus@1f10aa63-cdf2-0310-b900-c93c546f37ac>
Sat, 13 Oct 2007 03:05:29 +0000 (03:05 +0000)
git-svn-id: http://svn.voria.com/code@920 1f10aa63-cdf2-0310-b900-c93c546f37ac

synfig-studio/trunk/src/synfigapp/canvasinterface.cpp

index 45c307f..1d8a820 100644 (file)
@@ -108,8 +108,9 @@ CanvasInterface::set_time(synfig::Time x)
 
        // update the time in all the child canvases
        Canvas::Children children = get_canvas()->get_root()->children();
+       handle<CanvasInterface> interface;
        for (Canvas::Children::iterator iter = children.begin(); iter != children.end(); iter++)
-               if (handle<CanvasInterface> interface = get_instance()->find_canvas_interface(*iter))
+               if ((interface = get_instance()->find_canvas_interface(*iter)) != this)
                        interface->set_time(interface->get_canvas()->get_time());
 
        signal_time_changed()();