Make sure that there's (a) data in a bytevector that we're trying to convert

to an integer before trying to convert it and (b) make sure that there's data
in an APE::Item before trying to parse it.

BUG:92028


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@358637 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
This commit is contained in:
Scott Wheeler
2004-10-28 22:11:41 +00:00
parent 790c1b16c6
commit a18866a48b
2 changed files with 12 additions and 1 deletions

View File

@ -189,6 +189,12 @@ namespace TagLib {
T toNumber(const std::vector<char> &data, bool mostSignificantByteFirst)
{
T sum = 0;
if(data.size() <= 0) {
debug("ByteVectorMirror::toNumber<T>() -- data is empty, returning 0");
return sum;
}
uint size = sizeof(T);
uint last = data.size() > size ? size - 1 : data.size() - 1;