X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Floadcanvas.cpp;h=200456ee4969b9e43edc06b16dcd7a0b2d02b052;hb=542d4300393ce45b3426a2a859fe16131d3d2cf0;hp=b657776b39860fb988c711ab25b144be3b870d19;hpb=dde9e2714a61d109c8245ea67c17a312483fa57d;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/loadcanvas.cpp b/synfig-core/trunk/src/synfig/loadcanvas.cpp index b657776..200456e 100644 --- a/synfig-core/trunk/src/synfig/loadcanvas.cpp +++ b/synfig-core/trunk/src/synfig/loadcanvas.cpp @@ -6,7 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley -** Copyright (c) 2007 Chris Moore +** Copyright (c) 2007, 2008 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -1073,6 +1073,7 @@ CanvasParser::parse_animated(xmlpp::Element *element,Canvas::Handle canvas) if (first) first = false; else if (iter->get_value_node()->get_name() == "constant") + { if (angle - prev > 180) { while (angle - prev > 180) angle -= 360; @@ -1083,6 +1084,7 @@ CanvasParser::parse_animated(xmlpp::Element *element,Canvas::Handle canvas) while (prev - angle > 180) angle += 360; iter->set_value(Angle::deg(angle)); } + } prev = angle; } } @@ -1692,7 +1694,9 @@ CanvasParser::parse_layer(xmlpp::Element *element,Canvas::Handle canvas) String str= child->get_attribute("use")->get_value(); - if(layer->get_param(param_name).get_type()==ValueBase::TYPE_CANVAS) + if (str.empty()) + error(child,_("Empty use=\"\" value in ")); + else if(layer->get_param(param_name).get_type()==ValueBase::TYPE_CANVAS) { if(!layer->set_param(param_name,canvas->surefind_canvas(str))) error((*iter),_("Layer rejected canvas link"));