Skip to content

Commit

Permalink
fix: don't override default PreBlocker
Browse files Browse the repository at this point in the history
  • Loading branch information
johnletey committed Feb 4, 2025
1 parent 02a8324 commit ae9af5d
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 4 deletions.
2 changes: 1 addition & 1 deletion app.go
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ func NewApp(

jesterClient := jester.NewClient(cast.ToString(appOpts.Get(jester.FlagGRPCAddress)))
proposalHandler := NewProposalHandler(
app.BaseApp, app.Mempool(),
app.BaseApp, app.Mempool(), app.PreBlocker,
jesterClient, app.DollarKeeper, app.WormholeKeeper,
)

Expand Down
14 changes: 11 additions & 3 deletions proposal.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,11 +50,13 @@ type ProposalHandler struct {

defaultPrepareProposalHandler sdk.PrepareProposalHandler
defaultProcessProposalHandler sdk.ProcessProposalHandler
defaultPreBlocker sdk.PreBlocker
}

func NewProposalHandler(
app *baseapp.BaseApp,
mempool mempool.Mempool,
preBlocker sdk.PreBlocker,
jesterClient jester.QueryServiceClient,
dollarKeeper *dollarkeeper.Keeper,
wormholeKeeper *wormholekeeper.Keeper,
Expand All @@ -68,6 +70,7 @@ func NewProposalHandler(

defaultPrepareProposalHandler: defaultHandler.PrepareProposalHandler(),
defaultProcessProposalHandler: defaultHandler.ProcessProposalHandler(),
defaultPreBlocker: preBlocker,
}
}

Expand Down Expand Up @@ -112,7 +115,7 @@ func (h *ProposalHandler) PrepareProposal() sdk.PrepareProposalHandler {
if wormholeRes != nil && !wormholeRes.Executed {
nonExecutedVAAs = append(nonExecutedVAAs, raw)
} else {
logger.Debug("skipped already executed transfer from jester", "identifier", vaa.MessageID())
logger.Warn("skipped already executed transfer from jester", "identifier", vaa.MessageID())
}
}

Expand Down Expand Up @@ -162,16 +165,21 @@ func (h *ProposalHandler) ProcessProposal() sdk.ProcessProposalHandler {
// PreBlocker processes all injected $USDN transfers from Jester.
func (h *ProposalHandler) PreBlocker() sdk.PreBlocker {
return func(ctx sdk.Context, req *abci.RequestFinalizeBlock) (*sdk.ResponsePreBlock, error) {
res, err := h.defaultPreBlocker(ctx, req)
if err != nil {
return nil, errors.Wrap(err, "default PreBlocker failed")
}

if len(req.Txs) == 0 {
return &sdk.ResponsePreBlock{}, nil
return res, nil
}

tx := req.Txs[jesterIndex]
if h.isJesterTx(tx) {
h.handleJesterTx(ctx, tx)
}

return &sdk.ResponsePreBlock{}, nil
return res, nil
}
}

Expand Down

0 comments on commit ae9af5d

Please sign in to comment.