OWPIdentity::supportsInterface doesn't properly handle all inherited interfaces, potentially causing interface detection failures for contracts interacting with it through ERC165::supportsInterface.
Similar behavior is observed in this Sherlock contest -> https://github.com/sherlock-audit/2024-04-titles-judging/issues/287
OWPIdentity::supportsInterface inherits from multiple contracts including ERC1155 and AccessControl, but its implementation only returns the super call result. This means the interface detection will only check the most recently inherited contract's interfaces, ignoring others in the inheritance chain, which is crucial for ERC165 compliance.
When external contracts attempt to detect supported interfaces using ERC165, they may receive false negatives for interfaces that are actually implemented but not properly reported.
Integration failures with protocols that rely on ERC-165 interface detection, due to false negatives when checking for supported interfaces
Manual Review
Ensure that supportsInterface is implemented correctly to cover all inherited interfaces.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.