mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-04 08:36:52 +08:00
@@ -119,39 +119,25 @@ namespace BlackCore
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString invalidMetars;
|
|
||||||
int invalidLineCount = 0;
|
|
||||||
CMetarList metars;
|
CMetarList metars;
|
||||||
|
int invalidLines = 0;
|
||||||
QTextStream lineReader(&metarData);
|
QTextStream lineReader(&metarData);
|
||||||
while (!lineReader.atEnd())
|
while (!lineReader.atEnd())
|
||||||
{
|
{
|
||||||
if (this->isAbandoned()) { return; }
|
if (this->isAbandoned()) { return; }
|
||||||
QString line = lineReader.readLine();
|
QString line = lineReader.readLine();
|
||||||
CMetar metar = m_metarDecoder.decode(line);
|
CMetar metar = m_metarDecoder.decode(line);
|
||||||
if (metar != CMetar())
|
if (metar != CMetar()) { metars.push_back(metar); }
|
||||||
{
|
else { invalidLines++; }
|
||||||
metars.push_back(metar);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
invalidMetars += line;
|
|
||||||
invalidMetars += "\n";
|
|
||||||
invalidLineCount++;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CLogMessage(this).debug() << "METAR statistic: " << metars.size() << "Metars ( invalid:" << invalidLines << ")";
|
||||||
|
|
||||||
{
|
{
|
||||||
QWriteLocker l(&m_lock);
|
QWriteLocker l(&m_lock);
|
||||||
m_metars = metars;
|
m_metars = metars;
|
||||||
}
|
}
|
||||||
|
|
||||||
// I could use those for logging, etc.
|
|
||||||
Q_UNUSED(invalidMetars);
|
|
||||||
if (invalidLineCount > 0)
|
|
||||||
{
|
|
||||||
// Regular issue, log it, but do not show to user
|
|
||||||
CLogMessage(this).debug() << "Reading METARs failed for entries" << invalidLineCount;
|
|
||||||
}
|
|
||||||
emit metarsRead(metars);
|
emit metarsRead(metars);
|
||||||
emit dataRead(CEntityFlags::MetarEntity, CEntityFlags::ReadFinished, metars.size());
|
emit dataRead(CEntityFlags::MetarEntity, CEntityFlags::ReadFinished, metars.size());
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user