From 511c09f29f5246fabb68533a1b53bf6a3f4a34f0 Mon Sep 17 00:00:00 2001 From: Peteris Erins Date: Tue, 11 Aug 2020 20:14:27 +0100 Subject: [PATCH] support overloaded events when finding event ABI --- web3/contract.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/web3/contract.py b/web3/contract.py index c7e0637407..2f0f7e02a9 100644 --- a/web3/contract.py +++ b/web3/contract.py @@ -1122,13 +1122,18 @@ def __init__(self, *argument_names: Tuple[str]) -> None: else: self.argument_names = argument_names - self.abi = self._get_event_abi() + self.abi = self._get_event_abi(argument_names) @classmethod - def _get_event_abi(cls) -> ABIEvent: + def _get_event_abi(cls, argument_names: Optional[Tuple[str]]=None) -> ABIEvent: + if argument_names is None: + return find_matching_event_abi( + cls.contract_abi, + event_name=cls.event_name) return find_matching_event_abi( cls.contract_abi, - event_name=cls.event_name) + event_name=cls.event_name, + argument_names=argument_names) @combomethod def processReceipt(