Bugs item #1909245, was opened at 2008-03-06 18:37 Message generated for change (Comment added) made by zelgadis_ksee You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=757416&aid=1909245&group_id=144022
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: dooglus (dooglus) Assigned to: Nobody/Anonymous (nobody) Summary: cycles in "BLine Tangent" ValueNodes cause a crash Initial Comment: If BLine1 has one of its tangents converted to be a "BLine Tangent" ValueNode which links it to a position on BLine2, and BLine 2 in turn has one of its tangents linked in the same way to a position on BLine1, then Synfig gets into an infinite recursion and crashes: #20556 0xb7d1ef29 in synfig::ValueNode::on_changed (this=0x905c000) at valuenode.cpp:292 #20557 0xb7cf6d69 in synfig::Node::changed (this=0x905c000) at node.cpp:201 #20558 0xb7cf6ddc in synfig::Node::on_changed (this=0x90b67a0) at node.cpp:302 #20559 0xb7d1ef29 in synfig::ValueNode::on_changed (this=0x90b67a0) at valuenode.cpp:292 It's possible to fix this by getting Node::changed() to check whether it has visited this Node already, but then another infinite recursion happens: (this is from an example with 3 BLines, A -> B -> C -> A - just a single BLine A -> A is enough to trigger the bug, however): #2373 0xb7bd0771 in synfig::ValueNode_BLineCalcVertex::operator() (this=0x8830558, t={value_ = 0}) at valuenode_blinecalcvertex.cpp:90 #2374 0xb7bd7eb9 in synfig::ValueNode_Composite::operator() (this=0x906a218, t={value_ = 0}) at valuenode_composite.cpp:151 #2375 0xb7bc10db in synfig::ValueNode_BLine::operator() (this=0x9064778, t={value_ = 0}) at valuenode_bline.cpp:366 #2376 0xb7bd0771 in synfig::ValueNode_BLineCalcVertex::operator() (this=0x9201f00, t={value_ = 0}) at valuenode_blinecalcvertex.cpp:90 #2377 0xb7bd7eb9 in synfig::ValueNode_Composite::operator() (this=0x9063928, t={value_ = 0}) at valuenode_composite.cpp:151 #2378 0xb7bc10db in synfig::ValueNode_BLine::operator() (this=0x905fb70, t={value_ = 0}) at valuenode_bline.cpp:366 #2379 0xb7bd0771 in synfig::ValueNode_BLineCalcVertex::operator() (this=0x9212480, t={value_ = 0}) at valuenode_blinecalcvertex.cpp:90 #2380 0xb7bd7eb9 in synfig::ValueNode_Composite::operator() (this=0x905dd98, t={value_ = 0}) at valuenode_composite.cpp:151 #2381 0xb7bc10db in synfig::ValueNode_BLine::operator() (this=0x905aff8, t={value_ = 0}) at valuenode_bline.cpp:366 #2382 0xb7bd0771 in synfig::ValueNode_BLineCalcVertex::operator() (this=0x8830558, t={value_ = 0}) at valuenode_blinecalcvertex.cpp:90 ---------------------------------------------------------------------- Comment By: Konstantin Dmitriev (zelgadis_ksee) Date: 2012-12-26 04:16 Message: This bugtracker is no longer active. The issue is moved to the new bugtracker - http://synfig.org/issues/thebuggenie/synfig ---------------------------------------------------------------------- Comment By: dooglus (dooglus) Date: 2008-03-06 19:23 Message: Logged In: YES user_id=1546005 Originator: YES A simpler way to reproduce the crash: * create a new document * draw a circle * right-click the circle's 'amount' parameter and 'convert' to 'add' * right-click again and 'export' as 'a' * open the child panel, open 'valuebase nodes' and select 'a' * open the amount parameter in the 'params' panel * right-click 'lhs' and 'connect' amount a = a + RHS = (a + RHS) + RHS = ((a + RHS) + RHS) + RHS = ... bang ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=757416&aid=1909245&group_id=144022 ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Synfig-devl mailing list Synfig-devl@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/synfig-devl