Merge pull request #161 from TsudaKageyu/fix-syncdata

Fix reading corrupted ID3v2 syncdata
This commit is contained in:
Tsuda Kageyu 2013-04-19 17:43:16 -07:00
commit 81a9f0474d

View File

@ -49,7 +49,14 @@ TagLib::uint SynchData::toUInt(const ByteVector &data)
// Invalid data; assume this was created by some buggy software that just
// put normal integers here rather than syncsafe ones, and try it that
// way.
sum = data.toUInt();
if(data.size() >= 4) {
sum = data.toUInt(0, true);
}
else {
ByteVector tmp(data);
tmp.resize(4);
sum = tmp.toUInt(0, true);
}
}
return sum;