mirror of
https://github.com/protobuf-c/protobuf-c.git
synced 2024-12-26 21:04:23 +08:00
protobuf-c.c: Cast %lu args to unsigned long int
Resolves an ambiguity that %zu was meant to address, since %zu is not present on all platforms. Fixes #357.
This commit is contained in:
parent
39cd58f5ff
commit
e43ed4f01d
@ -2132,11 +2132,13 @@ scan_length_prefixed_data(size_t len, const uint8_t *data,
|
||||
// Protobuf messages should always be less than 2 GiB in size.
|
||||
// We also want to return early here so that hdr_len + val does
|
||||
// not overflow on 32-bit systems.
|
||||
PROTOBUF_C_UNPACK_ERROR("length prefix of %lu is too large", val);
|
||||
PROTOBUF_C_UNPACK_ERROR("length prefix of %lu is too large",
|
||||
(unsigned long int)val);
|
||||
return 0;
|
||||
}
|
||||
if (hdr_len + val > len) {
|
||||
PROTOBUF_C_UNPACK_ERROR("data too short after length-prefix of %lu", val);
|
||||
PROTOBUF_C_UNPACK_ERROR("data too short after length-prefix of %lu",
|
||||
(unsigned long int)val);
|
||||
return 0;
|
||||
}
|
||||
return hdr_len + val;
|
||||
|
Loading…
x
Reference in New Issue
Block a user