seen-haus / seen-contracts

Seen Haus contract suite
GNU General Public License v3.0
8 stars 2 forks source link

MHB-01M: Deprecated Native Asset Transfer #14

Closed JayWelsh closed 2 years ago

JayWelsh commented 2 years ago

MHB-01M: Deprecated Native Asset Transfer

Type Severity Location
Language Specific Minor MarketHandlerBase.sol:L221, L277, L323, L324, L366

Description:

The transfer member exposed by payable address types has been deprecated as it does not reliably execute and can fail in future updates of the EVM as it forwards a fixed gas stipend which is not compatible with gas cost EIP upgrades such as EIP-2929.

Example:

payable(recipient).transfer(royaltyAmount);

Recommendation:

We advise a safe wrapper library to be utilized instead such as the sendValue function of the Address library by OpenZeppelin which is guaranteed to execute under all circumstances.

JayWelsh commented 2 years ago

Resolved by https://github.com/seen-haus/seen-contracts/pull/51