diff -r d9cfac072869 -r 4c0a23bd70b5 lemon/goldberg_tarjan.h --- a/lemon/goldberg_tarjan.h Tue Nov 20 21:40:55 2007 +0000 +++ b/lemon/goldberg_tarjan.h Wed Nov 21 13:34:38 2007 +0000 @@ -395,8 +395,8 @@ void createStructures() { _node_num = countNodes(_graph); - _max_tree_size = (double(_node_num) * double(_node_num)) / - double(countEdges(_graph)); + _max_tree_size = int((double(_node_num) * double(_node_num)) / + double(countEdges(_graph))); if (!_flow) { _flow = Traits::createFlowMap(_graph); @@ -827,7 +827,9 @@ _level->initFinish(); for (NodeIt n(_graph); n != INVALID; ++n) { - if ((*_excess)[n] > 0 && _target != n) { + if (!reached[n]) { + _level->markToBottom(n); + } else if ((*_excess)[n] > 0 && _target != n) { _level->activate(n); } }