Skip to content
This repository was archived by the owner on Jan 9, 2025. It is now read-only.

[KGA-72] fix: return uncapped return_data_len from execute_from_outside #1612

Merged
merged 1 commit into from
Nov 15, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions cairo_zero/kakarot/accounts/library.cairo
Original file line number Diff line number Diff line change
Expand Up @@ -223,11 +223,16 @@ namespace AccountContract {
// See 300 max data_len for events
// https://github.com/starkware-libs/blockifier/blob/9bfb3d4c8bf1b68a0c744d1249b32747c75a4d87/crates/blockifier/resources/versioned_constants.json
// The whole data_len should be less than 300, so it's the return_data should be less than 297 (+3 for return_data_len, success, gas_used)
tempvar return_data_len = is_nn(297 - return_data_len) * (return_data_len - 297) + 297;
tempvar capped_return_data_len = is_nn(297 - return_data_len) * (return_data_len - 297) +
297;
transaction_executed.emit(
response_len=return_data_len, response=return_data, success=success, gas_used=gas_used
response_len=capped_return_data_len,
response=return_data,
success=success,
gas_used=gas_used,
);

// Return the unmodified return_data_len.
return (response_len=return_data_len, response=return_data);
}

Expand Down
Loading