Fix invalid size of memory allocated in wasi init (#1603)

The total size of null-terminated array of strings is wrongly calculated
This commit is contained in:
Wenyong Huang 2022-10-17 08:48:07 +08:00 committed by GitHub
parent 99097ce5ca
commit 02f0c2bed8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2412,7 +2412,7 @@ copy_string_array(const char *array[], uint32 array_size, char **buf_ptr,
buf_size += strlen(array[i]) + 1;
/* We add +1 to generate null-terminated array of strings */
total_size = sizeof(char *) * (uint64)array_size + 1;
total_size = sizeof(char *) * ((uint64)array_size + 1);
if (total_size >= UINT32_MAX
|| (total_size > 0 && !(list = wasm_runtime_malloc((uint32)total_size)))
|| buf_size >= UINT32_MAX