1
0
mirror of https://github.com/tumic0/GPXSee.git synced 2025-04-19 11:49:10 +02:00

Properly print the tag name on big-edian systems

This commit is contained in:
Martin Tůma 2025-04-17 20:58:27 +02:00
parent 1aa0fa4be4
commit 372f2966bb

View File

@ -218,8 +218,10 @@ bool ISO8211::readDDR()
for (int i = 0; i < fields.size(); i++) { for (int i = 0; i < fields.size(); i++) {
SubFields def; SubFields def;
if (!readDDA(fields.at(i), def)) { if (!readDDA(fields.at(i), def)) {
QByteArray tag(sizeof(quint32), Qt::Initialization::Uninitialized);
qToLittleEndian<quint32>(fields.at(i).tag, tag.data());
_errorString = QString("Error reading %1 DDA field") _errorString = QString("Error reading %1 DDA field")
.arg(QString(QByteArray((char*)&fields.at(i).tag, 4))); .arg(QString(tag));
return false; return false;
} }
_map.insert(fields.at(i).tag, def); _map.insert(fields.at(i).tag, def);
@ -323,14 +325,16 @@ bool ISO8211::readRecord(Record &record)
FieldsMap::const_iterator it(_map.find(def.tag)); FieldsMap::const_iterator it(_map.find(def.tag));
if (it == _map.constEnd()) { if (it == _map.constEnd()) {
_errorString = QString("%1: unknown record") QByteArray tag(sizeof(quint32), Qt::Initialization::Uninitialized);
.arg(QString(QByteArray((char*)&def.tag, 4))); qToLittleEndian<quint32>(def.tag, tag.data());
_errorString = QString("%1: unknown record").arg(QString(tag));
return false; return false;
} }
if (!readUDA(pos, def, it->defs(), it->repeat(), data)) { if (!readUDA(pos, def, it->defs(), it->repeat(), data)) {
_errorString = QString("Error reading %1 record") QByteArray tag(sizeof(quint32), Qt::Initialization::Uninitialized);
.arg(QString(QByteArray((char*)&def.tag, 4))); qToLittleEndian<quint32>(def.tag, tag.data());
_errorString = QString("Error reading %1 record").arg(QString(tag));
return false; return false;
} }