push
github
FFI: Fix __tostring metamethod access to enum cdata value. Thanks to Sergey Kaplun. (cherry picked from commit f2a1cd432) On a 64-bit host, `*(uint32_t **)p` (in the `lj_cf_ffi_meta___tostring()`) is the read of 8 bytes, while the size of the cdata tail for the enum is only 4. This leads to heap-buffer-overflow during the call of `tostring()` on the corresponding cdata. This patch fixes the pointer cast to `(uint32_t *)p`, which is correct. Part of tarantool/tarantool#10199
5673 of 6025 branches covered (94.16%)
Branch coverage included in aggregate %.
1 of 1 new or added line in 1 file covered. (100.0%)
21 existing lines in 4 files now uncovered.21639 of 23431 relevant lines covered (92.35%)
2949004.24 hits per line