diff --git a/sapfor/experts/Sapfor_2017/_src/CFGraph/DataFlow/data_flow_impl.h b/sapfor/experts/Sapfor_2017/_src/CFGraph/DataFlow/data_flow_impl.h index db33e73..cb8ae41 100644 --- a/sapfor/experts/Sapfor_2017/_src/CFGraph/DataFlow/data_flow_impl.h +++ b/sapfor/experts/Sapfor_2017/_src/CFGraph/DataFlow/data_flow_impl.h @@ -33,20 +33,18 @@ void DataFlowAnalysisNode::doStep() { if (in_cnt < next->out_cnt) { - for (const auto& byOut : next->getOut()) + const auto& byOut = next->getOut(); + bool inserted = addIn( byOut); + + if (inserted) { - bool inserted = addIn({ byOut }); + if (next->out_cnt > in_max_cnt) + in_max_cnt = next->out_cnt; - if (inserted) - { - if (next->out_cnt > in_max_cnt) - in_max_cnt = next->out_cnt; + inserted = forwardData(byOut); - inserted = forwardData({ byOut }); - - if (inserted && next->out_cnt > out_max_cnt) - out_max_cnt = next->out_cnt; - } + if (inserted && next->out_cnt > out_max_cnt) + out_max_cnt = next->out_cnt; } } }