提交 f49b1710 编写于 作者: I Ian Hickson

Merge pull request #1083 from Hixie/card-bug

Avoid infinite loop in syncChildren().
......@@ -563,8 +563,7 @@ abstract class TagNode extends Widget {
void _sync(Widget old, dynamic slot) {
assert(!_debugChildTaken);
Widget oldChild = (old as TagNode)?.child;
child = syncChild(child, oldChild, slot);
child = syncChild(child, (old as TagNode)?.child, slot);
if (child != null) {
assert(child.parent == this);
assert(child.renderObject != null);
......@@ -945,6 +944,12 @@ abstract class StatefulComponent extends Component {
fn();
_scheduleBuild();
}
String toStringName([String prefix = '', String startPrefix = '']) {
if (_disqualifiedFromEverAppearingAgain)
return '[[DISQUALIFIED]] ${super.toStringName()}';
return super.toStringName();
}
}
Set<Component> _dirtyComponents = new Set<Component>();
......@@ -1228,8 +1233,8 @@ abstract class RenderObjectWrapper extends Widget {
} else {
syncChild(null, oldChild, null);
}
oldChildrenBottom -= 1;
}
} // else the node was probably moved elsewhere, ignore it
oldChildrenBottom -= 1;
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册