@@ -298,7 +298,7 @@ func (h *htlcSuccessResolver) Encode(w io.Writer) error {
298
298
if err := binary .Write (w , endian , h .outputIncubating ); err != nil {
299
299
return err
300
300
}
301
- if err := binary .Write (w , endian , h .resolved ); err != nil {
301
+ if err := binary .Write (w , endian , h .IsResolved () ); err != nil {
302
302
return err
303
303
}
304
304
if err := binary .Write (w , endian , h .broadcastHeight ); err != nil {
@@ -337,9 +337,13 @@ func newSuccessResolverFromReader(r io.Reader, resCfg ResolverConfig) (
337
337
if err := binary .Read (r , endian , & h .outputIncubating ); err != nil {
338
338
return nil , err
339
339
}
340
- if err := binary .Read (r , endian , & h .resolved ); err != nil {
340
+
341
+ var resolved bool
342
+ if err := binary .Read (r , endian , & resolved ); err != nil {
341
343
return nil , err
342
344
}
345
+ h .resolved .Store (resolved )
346
+
343
347
if err := binary .Read (r , endian , & h .broadcastHeight ); err != nil {
344
348
return nil , err
345
349
}
@@ -622,7 +626,7 @@ func (h *htlcSuccessResolver) resolveLegacySuccessTx() error {
622
626
623
627
// Exit early if the output has already been sent to the UtxoNursery.
624
628
if h .outputIncubating {
625
- return nil
629
+ return h . resolveSuccessTxOutput ( h . htlcResolution . ClaimOutpoint )
626
630
}
627
631
628
632
// Otherwise, this is an output on our commitment transaction. In this
@@ -641,7 +645,12 @@ func (h *htlcSuccessResolver) resolveLegacySuccessTx() error {
641
645
}
642
646
643
647
h .outputIncubating = true
644
- return h .Checkpoint (h )
648
+ if err := h .Checkpoint (h ); err != nil {
649
+ log .Errorf ("unable to Checkpoint: %v" , err )
650
+ return err
651
+ }
652
+
653
+ return h .resolveSuccessTxOutput (h .htlcResolution .ClaimOutpoint )
645
654
}
646
655
647
656
// resolveSuccessTx waits for the sweeping tx of the second-level success tx to
0 commit comments