oops, wrong byte
This commit is contained in:
parent
838fee3e29
commit
9f2b14f261
|
|
@ -103,7 +103,7 @@ end_pack() {
|
|||
void DCPacker::
|
||||
begin_unpack(const string &data, const DCPackerInterface *root) {
|
||||
_unpack_str = data;
|
||||
begin_unpack(data.data(), data.length(), root);
|
||||
begin_unpack(_unpack_str.data(), _unpack_str.length(), root);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
|
@ -207,15 +207,15 @@ push() {
|
|||
} else {
|
||||
size_t length;
|
||||
if (length_bytes == 4) {
|
||||
length = ((size_t)(unsigned char)_unpack_data[_unpack_p + 0] |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 1] << 8) |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 2] << 16) |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 3] << 24));
|
||||
length = (size_t)((size_t)(unsigned char)_unpack_data[_unpack_p + 0] |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 1] << 8) |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 2] << 16) |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 3] << 24));
|
||||
_unpack_p += 4;
|
||||
_push_marker = _unpack_p + length;
|
||||
} else {
|
||||
length = ((size_t)(unsigned char)_unpack_data[_unpack_p + 0] |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 1] << 8));
|
||||
length = (size_t)((size_t)(unsigned char)_unpack_data[_unpack_p + 0] |
|
||||
((size_t)(unsigned char)_unpack_data[_unpack_p + 1] << 8));
|
||||
_unpack_p += 2;
|
||||
}
|
||||
_push_marker = _unpack_p + length;
|
||||
|
|
|
|||
|
|
@ -990,8 +990,8 @@ unpack_string(const char *data, size_t length, size_t &p, string &value) const {
|
|||
if (p + 2 > length) {
|
||||
return false;
|
||||
}
|
||||
string_length = ((unsigned int)(unsigned char)data[p] |
|
||||
((unsigned int)(unsigned char)data[p + 1] << 8));
|
||||
string_length = (size_t)((unsigned int)(unsigned char)data[p] |
|
||||
((unsigned int)(unsigned char)data[p + 1] << 8));
|
||||
p += 2;
|
||||
break;
|
||||
|
||||
|
|
@ -999,10 +999,10 @@ unpack_string(const char *data, size_t length, size_t &p, string &value) const {
|
|||
if (p + 4 > length) {
|
||||
return false;
|
||||
}
|
||||
string_length = ((unsigned int)(unsigned char)data[p] |
|
||||
((unsigned int)(unsigned char)data[p + 1] << 8) |
|
||||
((unsigned int)(unsigned char)data[p + 2] << 16) |
|
||||
((unsigned int)(unsigned char)data[p + 3] << 24));
|
||||
string_length = (size_t)((unsigned int)(unsigned char)data[p] |
|
||||
((unsigned int)(unsigned char)data[p + 1] << 8) |
|
||||
((unsigned int)(unsigned char)data[p + 2] << 16) |
|
||||
((unsigned int)(unsigned char)data[p + 3] << 24));
|
||||
p += 4;
|
||||
break;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue