mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-20 05:27:56 +01:00
java: fixes fatal offset calculation bugs on BufferedUnpackerIMPL.unpackInt()
This commit is contained in:
parent
f8a016edb5
commit
227c168b65
@ -103,7 +103,7 @@ abstract class BufferedUnpackerImpl extends UnpackerImpl {
|
||||
case 0xcc: // unsigned int 8
|
||||
more(2);
|
||||
advance(2);
|
||||
return (int)((short)buffer[offset+1] & 0xff);
|
||||
return (int)((short)(buffer[offset-1]) & 0xff);
|
||||
case 0xcd: // unsigned int 16
|
||||
more(3);
|
||||
castBuffer.rewind();
|
||||
@ -137,7 +137,7 @@ abstract class BufferedUnpackerImpl extends UnpackerImpl {
|
||||
case 0xd0: // signed int 8
|
||||
more(2);
|
||||
advance(2);
|
||||
return (int)buffer[offset+1];
|
||||
return (int)buffer[offset-1];
|
||||
case 0xd1: // signed int 16
|
||||
more(3);
|
||||
castBuffer.rewind();
|
||||
@ -178,7 +178,7 @@ abstract class BufferedUnpackerImpl extends UnpackerImpl {
|
||||
case 0xcc: // unsigned int 8
|
||||
more(2);
|
||||
advance(2);
|
||||
return (long)((short)buffer[offset+1] & 0xff);
|
||||
return (long)((short)(buffer[offset-1]) & 0xff);
|
||||
case 0xcd: // unsigned int 16
|
||||
more(3);
|
||||
castBuffer.rewind();
|
||||
@ -207,7 +207,7 @@ abstract class BufferedUnpackerImpl extends UnpackerImpl {
|
||||
case 0xd0: // signed int 8
|
||||
more(2);
|
||||
advance(2);
|
||||
return (long)buffer[offset+1];
|
||||
return (long)buffer[offset-1];
|
||||
case 0xd1: // signed int 16
|
||||
more(3);
|
||||
castBuffer.rewind();
|
||||
|
Loading…
x
Reference in New Issue
Block a user