diff --git a/client/portstatsmodel.cpp b/client/portstatsmodel.cpp index ff9d7b7..cd53d4d 100644 --- a/client/portstatsmodel.cpp +++ b/client/portstatsmodel.cpp @@ -200,6 +200,8 @@ QVariant PortStatsModel::headerData(int section, Qt::Orientation orientation, in QString notes; uint portGroupIdx, portIdx; + if (numPorts.isEmpty() || section >= numPorts.last()) + return QVariant(); getDomainIndexes(index(0, section), portGroupIdx, portIdx); notes = pgl->mPortGroups.at(portGroupIdx)->mPorts[portIdx]->notes(); if (!notes.isEmpty()) @@ -219,8 +221,12 @@ QVariant PortStatsModel::headerData(int section, Qt::Orientation orientation, in uint portGroupIdx, portIdx; QString portName; + if (numPorts.isEmpty() || section >= numPorts.last()) + return QVariant(); getDomainIndexes(index(0, section), portGroupIdx, portIdx); - portName = QString("Port %1-%2").arg(portGroupIdx).arg(portIdx); + portName = QString("Port %1-%2") + .arg(pgl->mPortGroups.at(portGroupIdx)->id()) + .arg(pgl->mPortGroups.at(portGroupIdx)->mPorts.at(portIdx)->id()); if (portGroupIdx < (uint) pgl->mPortGroups.size() && portIdx < (uint) pgl->mPortGroups.at(portGroupIdx)->mPorts.size()) { diff --git a/server/linuxport.cpp b/server/linuxport.cpp index a04df1e..18cf525 100644 --- a/server/linuxport.cpp +++ b/server/linuxport.cpp @@ -437,6 +437,10 @@ int LinuxPort::StatsMonitor::netlinkStats() return -1; } + count = 0; + +_retry: + // Find required size of buffer and resize accordingly while (1) { @@ -486,9 +490,6 @@ int LinuxPort::StatsMonitor::netlinkStats() } } - count = 0; - -_retry: msg.msg_flags = 0; // Actually receive the reply now diff --git a/server/pcapport.cpp b/server/pcapport.cpp index 5244956..94ac735 100644 --- a/server/pcapport.cpp +++ b/server/pcapport.cpp @@ -502,7 +502,8 @@ void PcapPort::PortTransmitter::run() packetSequenceList_.at(i)->usecDuration_); } - for(i = 0; i < packetSequenceList_.size(); i++) + i = 0; + while (i < packetSequenceList_.size()) { _restart: @@ -566,6 +567,9 @@ _restart: } } } + + // Move to the next Packet Set + i += rptSz; } if (returnToQIdx_ >= 0)