From db8f7da2013e0c7a2d9de0d9a7ea6b034c00e028 Mon Sep 17 00:00:00 2001 From: Sally MacFarlane Date: Wed, 11 Jun 2025 11:18:06 +0200 Subject: [PATCH] return min gas cost if inputs are zero Signed-off-by: Sally MacFarlane --- .../hyperledger/besu/evm/gascalculator/OsakaGasCalculator.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/evm/src/main/java/org/hyperledger/besu/evm/gascalculator/OsakaGasCalculator.java b/evm/src/main/java/org/hyperledger/besu/evm/gascalculator/OsakaGasCalculator.java index adc9f445fcd..21f8a30f880 100644 --- a/evm/src/main/java/org/hyperledger/besu/evm/gascalculator/OsakaGasCalculator.java +++ b/evm/src/main/java/org/hyperledger/besu/evm/gascalculator/OsakaGasCalculator.java @@ -60,6 +60,9 @@ public long modExpGasCost(final Bytes input) { clampedAdd(BigIntegerModularExponentiationPrecompiledContract.BASE_OFFSET, baseLength); final long maxLength = Math.max(modulusLength, baseLength); + if (maxLength <= 0) { + return 500L; + } long multiplicationComplexity = 16; long words = (maxLength + 7L) / 8L; words = Words.clampedMultiply(words, words);