stellar / rs-soroban-env

Rust environment for Soroban contracts.
Apache License 2.0
62 stars 42 forks source link

Fix the invoker contract auth rollback logic and cover it in the tests. #1260

Closed dmkozh closed 11 months ago

dmkozh commented 11 months ago

What

Fix the invoker contract auth rollback logic and cover it in the tests.

Besides the 'obvious' issue of missing the code that actually performs rollback, there was much more subtle issue of incorrect ordering between rollback and pop_frame. To avoid this I've moved the snapshots/rollbacks to the auth manager, so that it's not possible to accidentally mess up that order.

Resolves https://github.com/stellar/rs-soroban-env/issues/1252

Why

Bug fix/adding tests

Known limitations

N/A