Skip to content

Commit a641a76

Browse files
authored
fix: propagate user op validation reverts from plugins (#35)
1 parent 8b863f2 commit a641a76

File tree

1 file changed

+3
-14
lines changed

1 file changed

+3
-14
lines changed

src/account/UpgradeableModularAccount.sol

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -365,13 +365,7 @@ contract UpgradeableModularAccount is
365365

366366
if (!preUserOpValidationHook.isEmptyOrMagicValue()) {
367367
(address plugin, uint8 functionId) = preUserOpValidationHook.unpack();
368-
try IPlugin(plugin).preUserOpValidationHook(functionId, userOp, userOpHash) returns (
369-
uint256 returnData
370-
) {
371-
currentValidationData = returnData;
372-
} catch {
373-
currentValidationData = SIG_VALIDATION_FAILED;
374-
}
368+
currentValidationData = IPlugin(plugin).preUserOpValidationHook(functionId, userOp, userOpHash);
375369

376370
if (uint160(currentValidationData) > 1) {
377371
// If the aggregator is not 0 or 1, it is an unexpected value
@@ -392,13 +386,8 @@ contract UpgradeableModularAccount is
392386
{
393387
if (!userOpValidationFunction.isEmptyOrMagicValue()) {
394388
(address plugin, uint8 functionId) = userOpValidationFunction.unpack();
395-
try IPlugin(plugin).userOpValidationFunction(functionId, userOp, userOpHash) returns (
396-
uint256 returnData
397-
) {
398-
currentValidationData = returnData;
399-
} catch {
400-
currentValidationData = SIG_VALIDATION_FAILED;
401-
}
389+
currentValidationData = IPlugin(plugin).userOpValidationFunction(functionId, userOp, userOpHash);
390+
402391
if (preUserOpValidationHooksLength != 0) {
403392
// If we have other validation data we need to coalesce with
404393
validationData = _coalesceValidation(validationData, currentValidationData);

0 commit comments

Comments
 (0)