You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix[lang]: fix invalid memory read in raw_create (#4624)
`raw_create` could issue an invalid memory read, if the `value` kwarg
modifies the `initcode` argument (e.g., `DynArray.pop()`).
note that the invalid read was not observable in userspace, the program
would still behave correctly because the memory could not have been
written to in between the invalidation and the read
however, to be extra safe, this commit performs a memory copy if the
overlap is detected. this commit checks for overlap and issues a memory
copy if necessary. note that the overlap analysis also checks for
calls, which currently aren't problematic - the initcode is in memory,
which can't be affected by a reentrant call.
---------
Co-authored-by: Charles Cooper <[email protected]>
0 commit comments