Provide new account gas for low-level callcode/delegatecall

This commit is contained in:
Alex Beregszaszi 2017-08-01 12:56:36 +01:00
parent 7e07eb6eea
commit 39dba0efe8
2 changed files with 2 additions and 1 deletions

View File

@ -3,6 +3,7 @@
Features:
Bugfixes:
* Code Generator: Provide "new account gas" for low-level ``callcode`` and ``delegatecall``.
### 0.4.14 (2017-07-31)

View File

@ -1712,7 +1712,7 @@ void ExpressionCompiler::appendExternalFunctionCall(
u256 gasNeededByCaller = eth::GasCosts::callGas + 10;
if (_functionType.valueSet())
gasNeededByCaller += eth::GasCosts::callValueTransferGas;
if (!isCallCode && !isDelegateCall && !existenceChecked)
if (!existenceChecked)
gasNeededByCaller += eth::GasCosts::callNewAccountGas; // we never know
m_context << gasNeededByCaller << Instruction::GAS << Instruction::SUB;
}