fix: copy buffers read from wasm memory #22
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
By default, Wazero's
api.Memory.Read
returns a view of the underlying memory:This caused an issue for
varSet
because it basically set the value of the variable to a view of the underlying memory. And before every call, we callextism_reset
to reset the wasm memory. So this would basically zero out the values of all variables.We have two choices:
ReadBytes
which is what I have done in this PRvarSet
. This allows for fine grain control over reading wasm memory, but it might create similar (hard to track) bugs in the future