I noticed that VariableLengthInts do not set the 7th bit on any byte in the parseBytes() function. This can be fixed easily by droping the & operation in line 78 resulting in
ints[mSizeInBytes - 1] = b;
To account this change line 93 must be changed to ensure mValue is correctly calculated
mValue += (ints[i] & 0x7F) << shift;
And by the way why don't you set shift (line83-86) simply by
int shift = (mSizeInBytes-1)*7;
saves another for loop ;)
I noticed that VariableLengthInts do not set the 7th bit on any byte in the parseBytes() function. This can be fixed easily by droping the & operation in line 78 resulting in
ints[mSizeInBytes - 1] = b;
To account this change line 93 must be changed to ensure mValue is correctly calculated
mValue += (ints[i] & 0x7F) << shift;
And by the way why don't you set shift (line83-86) simply by
int shift = (mSizeInBytes-1)*7;
saves another for loop ;)