Skip to content

Commit 4e7731d

Browse files
committed
f - pull from state when pushing PaymentFailed
1 parent afe7481 commit 4e7731d

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

lightning/src/ln/outbound_payment.rs

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1182,16 +1182,12 @@ impl OutboundPayments {
11821182
is_retryable_now = false;
11831183
}
11841184
if payment.get().remaining_parts() == 0 {
1185-
if payment.get().abandoned() {
1185+
if let PendingOutboundPayment::Abandoned { payment_hash, reason, .. }= payment.get() {
11861186
if !payment_is_probe {
11871187
full_failure_ev = Some(events::Event::PaymentFailed {
11881188
payment_id: *payment_id,
1189-
payment_hash: payment.get().payment_hash().expect("PendingOutboundPayments::RetriesExceeded always has a payment hash set"),
1190-
reason: Some(if payment_retryable {
1191-
PaymentFailureReason::RetriesExhausted
1192-
} else {
1193-
PaymentFailureReason::RecipientRejected
1194-
}),
1189+
payment_hash: *payment_hash,
1190+
reason: *reason,
11951191
});
11961192
}
11971193
payment.remove();
@@ -1253,12 +1249,15 @@ impl OutboundPayments {
12531249
) {
12541250
let mut outbounds = self.pending_outbound_payments.lock().unwrap();
12551251
if let hash_map::Entry::Occupied(mut payment) = outbounds.entry(payment_id) {
1256-
if let Ok(()) = payment.get_mut().mark_abandoned(reason) {
1252+
if !payment.get().abandoned() {
1253+
payment.get_mut().mark_abandoned(reason);
1254+
}
1255+
if let PendingOutboundPayment::Abandoned { payment_hash, reason, .. } = payment.get() {
12571256
if payment.get().remaining_parts() == 0 {
12581257
pending_events.lock().unwrap().push(events::Event::PaymentFailed {
12591258
payment_id,
1260-
payment_hash: payment.get().payment_hash().expect("PendingOutboundPayments::RetriesExceeded always has a payment hash set"),
1261-
reason: Some(reason),
1259+
payment_hash: *payment_hash,
1260+
reason: *reason,
12621261
});
12631262
payment.remove();
12641263
}

0 commit comments

Comments
 (0)