diff options
author | Wei Li <weili@chromium.org> | 2016-03-28 10:33:33 -0700 |
---|---|---|
committer | Wei Li <weili@chromium.org> | 2016-03-28 10:33:33 -0700 |
commit | 8940993efffaaf432320509555dc61122b8b72b2 (patch) | |
tree | 2e9c42a78d96061ae06ee052e8a274ccfb8fcec7 /core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp | |
parent | b5e8f14e3eefc5da995b332788d3203cee204883 (diff) | |
download | pdfium-8940993efffaaf432320509555dc61122b8b72b2.tar.xz |
Reduce signed/unsigned comparison warnings
The warnings generated by Clang. This is part 1 for some simple cases.
BUG=pdfium:29
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1840483003 .
Diffstat (limited to 'core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp')
-rw-r--r-- | core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp b/core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp index 219a72507b..346476b62b 100644 --- a/core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp +++ b/core/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp @@ -176,24 +176,21 @@ uint32_t RunLengthDecode(const uint8_t* src_buf, if (src_buf[i] < 128) { old = dest_size; dest_size += src_buf[i] + 1; - if (dest_size < old) { - return static_cast<uint32_t>(-1); - } + if (dest_size < old) + return FX_INVALID_OFFSET; i += src_buf[i] + 2; } else if (src_buf[i] > 128) { old = dest_size; dest_size += 257 - src_buf[i]; - if (dest_size < old) { - return static_cast<uint32_t>(-1); - } + if (dest_size < old) + return FX_INVALID_OFFSET; i += 2; } else { break; } } - if (dest_size >= _STREAM_MAX_SIZE_) { - return static_cast<uint32_t>(-1); - } + if (dest_size >= _STREAM_MAX_SIZE_) + return FX_INVALID_OFFSET; dest_buf = FX_Alloc(uint8_t, dest_size); i = 0; int dest_count = 0; |