[pallet-revive] write sandbox output according to the provided output buffer length (#5743)
Instead of error out if the provided output buffer is smaller than what
we want to write, we can just write what fits into the output buffer
instead. We already write back the actual bytes written to the in-out
pointer, so contracts can check it anyways.
This in turn introduces the benefit of allowing contracts to implicitly
request only a portion of the returned data from calls and incantations.
Which is especially beneficial for YUL as the `call` family opcodes have
a return data size argument and this change removes the need to work
around it in contract code.
---------
Signed-off-by: xermicus <[email protected]>
parent
ba38d31d
Pipeline
#497617
waiting for manual action
with stages
in
1 hour, 3 minutes, and 30 seconds
Please register or sign in to comment