Skip to content

Commit 6c4976f

Browse files
committed
tapchannel: use UpdateTxWitness to insert preimage
1 parent 1e1c18b commit 6c4976f

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

tapchannel/aux_sweeper.go

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1966,7 +1966,7 @@ func newBlobWithWitnessInfo(i input.Input) lfn.Result[blobWithWitnessInfo] {
19661966
// from the inner struct, so we can update the witness stack.
19671967
var (
19681968
preimageInfo lfn.Option[preimageDesc]
1969-
secondLevel = true
1969+
secondLevel bool
19701970
)
19711971
switch i.WitnessType() {
19721972

@@ -2039,8 +2039,8 @@ func prepVpkts(bRes lfn.Result[blobWithWitnessInfo],
20392039
if err != nil {
20402040
return nil, err
20412041
}
2042-
var res cmsg.ContractResolution
20432042

2043+
var res cmsg.ContractResolution
20442044
err = res.Decode(bytes.NewReader(b.resolutionBlob))
20452045
if err != nil {
20462046
return nil, err
@@ -2052,22 +2052,19 @@ func prepVpkts(bRes lfn.Result[blobWithWitnessInfo],
20522052
pkts := res.Vpkts1()
20532053
if secondLevel {
20542054
pkts = res.Vpkts2()
2055+
tapSigDesc = res.SigDescs()
20552056
}
20562057

20572058
b.preimageInfo.WhenSome(func(p preimageDesc) {
2058-
vIns := fn.FlatMap(
2059-
pkts,
2060-
func(vPkt *tappsbt.VPacket) []*tappsbt.VInput {
2061-
return vPkt.Inputs
2062-
},
2063-
)
2059+
for _, pkt := range pkts {
2060+
newAsset := pkt.Outputs[0].Asset
20642061

2065-
for _, vIn := range vIns {
2066-
prevWitness := vIn.Asset().PrevWitnesses[0].TxWitness
2067-
vIn.Asset().PrevWitnesses[0].TxWitness = slices.Insert(
2062+
prevWitness := newAsset.PrevWitnesses[0].TxWitness
2063+
prevWitness = slices.Insert(
20682064
prevWitness, p.witnessIndex,
20692065
p.preimage[:],
20702066
)
2067+
newAsset.UpdateTxWitness(0, prevWitness)
20712068
}
20722069
})
20732070

@@ -2139,7 +2136,6 @@ func extractInputVPackets(inputs []input.Input) lfn.Result[sweepVpkts] {
21392136
return lfn.Err[sweepVpkts](err)
21402137
}
21412138

2142-
vPkts2 = append(vPkts1, *vpkt)
21432139
}
21442140

21452141
return lfn.Ok(sweepVpkts{

0 commit comments

Comments
 (0)