Tengo un error con un código de Solidity

Dark_Lesser Mensajes enviados 2 Fecha de inscripción domingo, 23 de mayo de 2021 Estatus Miembro Última intervención martes, 4 de junio de 2024 - Modificado el 4 jun 2024 a las 18:34

Este es un código el cual almacena tus tBNB, suma el saldo entre si para aunementar su total para luego retirar el doble de tBNB. El código fue compilado en remix ethereum pero al querer retirar todo el doble del balance lanza un mensaje de error, quién sabe porque?

El código es así:

// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

contract Vault {

    mapping(address => uint) public balances;

    function deposit() public payable {

        balances[msg.sender] += msg.value;

    }

    function withdrawAll() public {

        address beneficiary = msg.sender;

        uint amount = balances[msg.sender];

        (bool success, ) = address(beneficiary).call{value: amount}("");

        require(success, "Transfer failed.");

        balances[msg.sender] = 0;

    }

    function sumBalance() public {

        balances[msg.sender] += balances[msg.sender]+balances[msg.sender];

    }

}

Y este es el mensaje de error que me lanza remix ethereum cuando quiero retirar todo:

 


Consulta también: