Index: src/wasm/wasm-module.h |
diff --git a/src/wasm/wasm-module.h b/src/wasm/wasm-module.h |
index 78b780ace04bb5b87898cf301f771a8f6aaa29ac..1a328262cd901430a4d263ebc7be8fdc0b3e04bc 100644 |
--- a/src/wasm/wasm-module.h |
+++ b/src/wasm/wasm-module.h |
@@ -193,14 +193,18 @@ struct WasmModule { |
WasmName GetName(uint32_t offset, uint32_t length) const { |
if (length == 0) return {"<?>", 3}; // no name. |
CHECK(BoundsCheck(offset, offset + length)); |
- return {reinterpret_cast<const char*>(module_start + offset), length}; |
+ DCHECK_GE(static_cast<int>(length), 0); |
+ return {reinterpret_cast<const char*>(module_start + offset), |
+ static_cast<int>(length)}; |
} |
// Get a string stored in the module bytes representing a name. |
WasmName GetNameOrNull(uint32_t offset, uint32_t length) const { |
if (length == 0) return {NULL, 0}; // no name. |
CHECK(BoundsCheck(offset, offset + length)); |
- return {reinterpret_cast<const char*>(module_start + offset), length}; |
+ DCHECK_GE(static_cast<int>(length), 0); |
+ return {reinterpret_cast<const char*>(module_start + offset), |
+ static_cast<int>(length)}; |
} |
// Checks the given offset range is contained within the module bytes. |