add try catch, fixes coverity issues 1229132 and 1229133
This commit is contained in:
parent
e1d94eee21
commit
fdc5bd6195
@ -49,57 +49,64 @@ int main(int argc, char *argv[])
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::filesystem::path hsgr_path(argv[1]);
|
try
|
||||||
|
|
||||||
std::vector<QueryGraph::NodeArrayEntry> node_list;
|
|
||||||
std::vector<QueryGraph::EdgeArrayEntry> edge_list;
|
|
||||||
|
|
||||||
SimpleLogger().Write() << "loading graph from " << hsgr_path.string();
|
|
||||||
|
|
||||||
unsigned m_check_sum = 0;
|
|
||||||
unsigned m_number_of_nodes = readHSGRFromStream(hsgr_path, node_list, edge_list, &m_check_sum);
|
|
||||||
SimpleLogger().Write() << "announced " << m_number_of_nodes
|
|
||||||
<< " nodes, checksum: " << m_check_sum;
|
|
||||||
BOOST_ASSERT_MSG(0 != node_list.size(), "node list empty");
|
|
||||||
// BOOST_ASSERT_MSG(0 != edge_list.size(), "edge list empty");
|
|
||||||
SimpleLogger().Write() << "loaded " << node_list.size() << " nodes and " << edge_list.size()
|
|
||||||
<< " edges";
|
|
||||||
std::shared_ptr<QueryGraph> m_query_graph = std::make_shared<QueryGraph>(node_list, edge_list);
|
|
||||||
|
|
||||||
BOOST_ASSERT_MSG(0 == node_list.size(), "node list not flushed");
|
|
||||||
BOOST_ASSERT_MSG(0 == edge_list.size(), "edge list not flushed");
|
|
||||||
|
|
||||||
Percent p(m_query_graph->GetNumberOfNodes());
|
|
||||||
for (const auto u : boost::irange(0u, m_query_graph->GetNumberOfNodes()))
|
|
||||||
{
|
{
|
||||||
for (const auto eid : m_query_graph->GetAdjacentEdgeRange(u))
|
boost::filesystem::path hsgr_path(argv[1]);
|
||||||
|
|
||||||
|
std::vector<QueryGraph::NodeArrayEntry> node_list;
|
||||||
|
std::vector<QueryGraph::EdgeArrayEntry> edge_list;
|
||||||
|
|
||||||
|
SimpleLogger().Write() << "loading graph from " << hsgr_path.string();
|
||||||
|
|
||||||
|
unsigned m_check_sum = 0;
|
||||||
|
unsigned m_number_of_nodes = readHSGRFromStream(hsgr_path, node_list, edge_list, &m_check_sum);
|
||||||
|
SimpleLogger().Write() << "announced " << m_number_of_nodes
|
||||||
|
<< " nodes, checksum: " << m_check_sum;
|
||||||
|
BOOST_ASSERT_MSG(0 != node_list.size(), "node list empty");
|
||||||
|
// BOOST_ASSERT_MSG(0 != edge_list.size(), "edge list empty");
|
||||||
|
SimpleLogger().Write() << "loaded " << node_list.size() << " nodes and " << edge_list.size()
|
||||||
|
<< " edges";
|
||||||
|
std::shared_ptr<QueryGraph> m_query_graph = std::make_shared<QueryGraph>(node_list, edge_list);
|
||||||
|
|
||||||
|
BOOST_ASSERT_MSG(0 == node_list.size(), "node list not flushed");
|
||||||
|
BOOST_ASSERT_MSG(0 == edge_list.size(), "edge list not flushed");
|
||||||
|
|
||||||
|
Percent p(m_query_graph->GetNumberOfNodes());
|
||||||
|
for (const auto u : boost::irange(0u, m_query_graph->GetNumberOfNodes()))
|
||||||
{
|
{
|
||||||
const EdgeData &data = m_query_graph->GetEdgeData(eid);
|
for (const auto eid : m_query_graph->GetAdjacentEdgeRange(u))
|
||||||
if (!data.shortcut)
|
|
||||||
{
|
{
|
||||||
continue;
|
const EdgeData &data = m_query_graph->GetEdgeData(eid);
|
||||||
}
|
if (!data.shortcut)
|
||||||
const unsigned v = m_query_graph->GetTarget(eid);
|
{
|
||||||
const EdgeID first_edge_id = m_query_graph->FindEdgeInEitherDirection(u, data.id);
|
continue;
|
||||||
if (SPECIAL_EDGEID == first_edge_id)
|
}
|
||||||
{
|
const unsigned v = m_query_graph->GetTarget(eid);
|
||||||
SimpleLogger().Write(logWARNING) << "cannot find first segment of edge (" << u
|
const EdgeID first_edge_id = m_query_graph->FindEdgeInEitherDirection(u, data.id);
|
||||||
<< "," << data.id << "," << v << "), eid: " << eid;
|
if (SPECIAL_EDGEID == first_edge_id)
|
||||||
BOOST_ASSERT(false);
|
{
|
||||||
return 1;
|
SimpleLogger().Write(logWARNING) << "cannot find first segment of edge (" << u
|
||||||
}
|
<< "," << data.id << "," << v << "), eid: " << eid;
|
||||||
const EdgeID second_edge_id = m_query_graph->FindEdgeInEitherDirection(data.id, v);
|
BOOST_ASSERT(false);
|
||||||
if (SPECIAL_EDGEID == second_edge_id)
|
return 1;
|
||||||
{
|
}
|
||||||
SimpleLogger().Write(logWARNING) << "cannot find second segment of edge (" << u
|
const EdgeID second_edge_id = m_query_graph->FindEdgeInEitherDirection(data.id, v);
|
||||||
<< "," << data.id << "," << v << "), eid: " << eid;
|
if (SPECIAL_EDGEID == second_edge_id)
|
||||||
BOOST_ASSERT(false);
|
{
|
||||||
return 1;
|
SimpleLogger().Write(logWARNING) << "cannot find second segment of edge (" << u
|
||||||
|
<< "," << data.id << "," << v << "), eid: " << eid;
|
||||||
|
BOOST_ASSERT(false);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
p.printIncrement();
|
||||||
}
|
}
|
||||||
p.printIncrement();
|
m_query_graph.reset();
|
||||||
|
SimpleLogger().Write() << "Data file " << argv[0] << " appears to be OK";
|
||||||
|
}
|
||||||
|
catch (const std::exception &e)
|
||||||
|
{
|
||||||
|
SimpleLogger().Write(logWARNING) << "[exception] " << e.what();
|
||||||
}
|
}
|
||||||
m_query_graph.reset();
|
|
||||||
SimpleLogger().Write() << "Data file " << argv[0] << " appears to be OK";
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user