@@ -436,22 +436,23 @@ func NewAppKeeper(
436436 )
437437
438438 wasmStack := wasm .NewIBCHandler (appKeepers .WasmKeeper , appKeepers .IBCKeeper .ChannelKeeper , appKeepers .IBCKeeper .ChannelKeeper )
439- //SendPacket --> Transfer -> PFM -> ibcHooks -> IBC-Core (ICS4Wrappers)
440- //RecvPacket --> IBC-Core -> ibcHooks -> PFM -> Transfer (AddRoute)
439+ //SendPacket --> Transfer -> callbacks -> ibchooks -> IBC-Core (ICS4Wrappers)
440+ //RecvPacket --> IBC-Core -> PFM -> ibcHooks -> callback -> Transfer (AddRoute)
441441 maxCallbackGas := uint64 (10_000_000 ) // const
442442
443443 var transferStack ibctypes.IBCModule = ibctransfer .NewIBCModule (* appKeepers .TransferKeeper )
444- transferStack = ibccallbacks .NewIBCMiddleware (transferStack , & hooksICS4Wrapper , wasmStack , maxCallbackGas )
445- hookStack := ibchooks .NewIBCMiddleware (transferStack , & hooksICS4Wrapper )
446- appKeepers .TransferKeeper .WithICS4Wrapper (hookStack ) // does not matter to use transfer stack, as pfm send is no-op
444+ cbStack := ibccallbacks .NewIBCMiddleware (transferStack , & hooksICS4Wrapper , wasmStack , maxCallbackGas )
445+ transferStack = ibchooks .NewIBCMiddleware (cbStack , & hooksICS4Wrapper )
447446
448447 transferStack = packetforward .NewIBCMiddleware (
449- hookStack ,
448+ transferStack ,
450449 appKeepers .PacketForwardKeeper ,
451450 0 , // no retries on timeout
452451 packetforwardkeeper .DefaultForwardTransferPacketTimeoutTimestamp ,
453452 )
454453
454+ appKeepers .TransferKeeper .WithICS4Wrapper (cbStack ) // does not matter to use transfer stack, as pfm send is no-op
455+
455456 // Information will flow: ibc-port -> icaController.
456457 icaControllerStack := icacontroller .NewIBCMiddleware (* appKeepers .ICAControllerKeeper )
457458
0 commit comments