aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/utils.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/utils.cc b/src/utils.cc
index b2666d3..23d8479 100644
--- a/src/utils.cc
+++ b/src/utils.cc
@@ -185,7 +185,7 @@ bool IsValidGzipHeader(const uint8_t* header, size_t size) {
// 0 1 0x1F
// 1 1 0x8B
// 2 1 compression method (8 denotes deflate)
- static const uint8_t magic[] = {0x1F, 0x8B, 8};
+ static constexpr uint8_t magic[] = {0x1F, 0x8B, 8};
return size >= 10 && std::equal(std::begin(magic), std::end(magic), header);
}
} // namespace
@@ -240,10 +240,10 @@ bool LocateDeflatesInGzip(const Buffer& data, vector<BitExtent>* deflates) {
offset += compressed_size;
// Ignore CRC32 and uncompressed size.
- TEST_AND_RETURN_FALSE(offset + 8 <= data.size());
offset += 8;
member_start = offset;
- } while (IsValidGzipHeader(&data[member_start], data.size() - member_start));
+ } while (member_start < data.size() &&
+ IsValidGzipHeader(&data[member_start], data.size() - member_start));
return true;
}