diff --git a/src/map/ENC/iso8211.cpp b/src/map/ENC/iso8211.cpp index dcbbfbf2..02dddbc4 100644 --- a/src/map/ENC/iso8211.cpp +++ b/src/map/ENC/iso8211.cpp @@ -86,11 +86,13 @@ int ISO8211::readDR(QVector &fields) return -1; r.tag = qFromLittleEndian(tag); - r.pos = offset + Util::str2int(fieldPos.constData(), posSize); + r.pos = Util::str2int(fieldPos.constData(), posSize); r.size = Util::str2int(fieldLen.constData(), lenSize); if (r.pos < 0 || r.size < 0) return -1; + + r.pos += offset; } return len;