1.1 --- a/lemon/goldberg_tarjan.h Tue Nov 20 21:40:55 2007 +0000
1.2 +++ b/lemon/goldberg_tarjan.h Wed Nov 21 13:34:38 2007 +0000
1.3 @@ -395,8 +395,8 @@
1.4 void createStructures() {
1.5 _node_num = countNodes(_graph);
1.6
1.7 - _max_tree_size = (double(_node_num) * double(_node_num)) /
1.8 - double(countEdges(_graph));
1.9 + _max_tree_size = int((double(_node_num) * double(_node_num)) /
1.10 + double(countEdges(_graph)));
1.11
1.12 if (!_flow) {
1.13 _flow = Traits::createFlowMap(_graph);
1.14 @@ -827,7 +827,9 @@
1.15 _level->initFinish();
1.16
1.17 for (NodeIt n(_graph); n != INVALID; ++n) {
1.18 - if ((*_excess)[n] > 0 && _target != n) {
1.19 + if (!reached[n]) {
1.20 + _level->markToBottom(n);
1.21 + } else if ((*_excess)[n] > 0 && _target != n) {
1.22 _level->activate(n);
1.23 }
1.24 }