Skip to content

Commit b511f22

Browse files
committed
ci,x.json2.decoder2: fix sanitize jobs
1 parent 318394d commit b511f22

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

vlib/x/json2/decoder2/decode_sumtype.v

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,8 @@ fn (mut decoder Decoder) check_struct_type_valid[T](s T, current_node Node[Value
164164
}
165165

166166
if unsafe {
167-
vmemcmp(decoder.json.str + key_info.position, type_field.str, type_field.len) == 0
167+
key_info.position + type_field.len <= decoder.json.len
168+
&& 0 == vmemcmp(decoder.json.str + key_info.position, type_field.str, type_field.len)
168169
} {
169170
// find type field
170171
type_field_node = type_field_node.next
@@ -184,8 +185,8 @@ fn (mut decoder Decoder) check_struct_type_valid[T](s T, current_node Node[Value
184185
unsafe {
185186
}
186187
if unsafe {
187-
vmemcmp(decoder.json.str + type_field_node.value.position + 1, variant_name.str,
188-
variant_name.len) == 0
188+
type_field_node.value.position + 1 + variant_name.len <= decoder.json.len
189+
&& 0 == vmemcmp(decoder.json.str + type_field_node.value.position + 1, variant_name.str, variant_name.len)
189190
} {
190191
return true
191192
}

0 commit comments

Comments
 (0)