diff --git a/src/topology-read/model/inet-topology-reader.cc b/src/topology-read/model/inet-topology-reader.cc index 16b484def..2f2e5bb69 100644 --- a/src/topology-read/model/inet-topology-reader.cc +++ b/src/topology-read/model/inet-topology-reader.cc @@ -86,7 +86,7 @@ InetTopologyReader::Read (void) lineBuffer >> totlink; NS_LOG_INFO ("Inet topology should have " << totnode << " nodes and " << totlink << " links"); - for (int i = 0; i < totnode; i++) + for (int i = 0; i < totnode && !topgen.eof (); i++) { getline (topgen,line); } diff --git a/src/uan/model/uan-prop-model.cc b/src/uan/model/uan-prop-model.cc index a28308cd7..f2fd35116 100644 --- a/src/uan/model/uan-prop-model.cc +++ b/src/uan/model/uan-prop-model.cc @@ -64,7 +64,7 @@ operator>> (std::istream &is, UanPdp &pdp) std::complex amp; pdp.m_taps = std::vector (ntaps); - for (uint32_t i = 0; i < ntaps; i++) + for (uint32_t i = 0; i < ntaps && !is.eof (); i++) { is >> amp >> c1; if (c1 != '|') diff --git a/src/uan/model/uan-tx-mode.cc b/src/uan/model/uan-tx-mode.cc index ca2d6656c..012e0668c 100644 --- a/src/uan/model/uan-tx-mode.cc +++ b/src/uan/model/uan-tx-mode.cc @@ -288,7 +288,7 @@ operator >> (std::istream &is, UanModesList &ml) ml.m_modes.clear (); ml.m_modes.resize (numModes); - for (int i = 0; i < numModes; i++) + for (int i = 0; i < numModes && !is.eof (); i++) { is >> ml.m_modes[i] >> c; if (c != '|')