diff --git a/contracts/scripts/ci/find_slither_report_diff.sh b/contracts/scripts/ci/find_slither_report_diff.sh index 4985b8ddeff..6a558afdbda 100755 --- a/contracts/scripts/ci/find_slither_report_diff.sh +++ b/contracts/scripts/ci/find_slither_report_diff.sh @@ -47,7 +47,7 @@ openai_result=$(echo '{ # throw error openai_result when is not 200 if [ "$openai_result" != '200' ]; then echo "::error::OpenAI API call failed with status $openai_result: $(cat prompt_response.json)" - return 1 + exit 1 fi # replace lines starting with ' -' (1space) with ' -' (2spaces) @@ -80,7 +80,7 @@ if [[ -n "$validation_prompt_path" ]]; then # throw error openai_result when is not 200 if [ "$validation_result" != '200' ]; then echo "::error::OpenAI API call failed with status $validation_result: $(cat prompt_validation_response.json)" - return 1 + exit 1 fi # replace lines starting with ' -' (1space) with ' -' (2spaces) diff --git a/contracts/src/v0.8/functions/v1_3_0/FunctionsBilling.sol b/contracts/src/v0.8/functions/v1_3_0/FunctionsBilling.sol index 49ecf3d6652..98a28c3bf35 100644 --- a/contracts/src/v0.8/functions/v1_3_0/FunctionsBilling.sol +++ b/contracts/src/v0.8/functions/v1_3_0/FunctionsBilling.sol @@ -91,6 +91,18 @@ abstract contract FunctionsBilling is Routable, IFunctionsBilling { return s_config; } + fallback() external { + // copied directly from OZ's Proxy contract + assembly { + // Copy msg.data. We take full control of memory in this inline assembly + // block because it will not return to Solidity code. We overwrite the + // Solidity scratch pad at memory position 0. + calldatacopy(0, 0, calldatasize()) + + return(0, returndatasize()) + } + } + /// @notice Sets the Chainlink Coordinator's billing configuration /// @param config - See the contents of the FunctionsBillingConfig struct in IFunctionsBilling.sol for more information function updateConfig(FunctionsBillingConfig memory config) public {