Skip to content

Commit 12b47f3

Browse files
Pass pending events to outbound_payments::abandon_payment
This makes it uniform with the outbound payment methods that generate events and set us up for abandoning payments on behalf of the user.
1 parent 565b2a8 commit 12b47f3

File tree

2 files changed

+5
-7
lines changed

2 files changed

+5
-7
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2606,9 +2606,7 @@ where
26062606
/// [`Event::PaymentSent`]: events::Event::PaymentSent
26072607
pub fn abandon_payment(&self, payment_id: PaymentId) {
26082608
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self.total_consistency_lock, &self.persistence_notifier);
2609-
if let Some(payment_failed_ev) = self.pending_outbound_payments.abandon_payment(payment_id) {
2610-
self.pending_events.lock().unwrap().push(payment_failed_ev);
2611-
}
2609+
self.pending_outbound_payments.abandon_payment(payment_id, &self.pending_events);
26122610
}
26132611

26142612
/// Send a spontaneous payment, which is a payment that does not require the recipient to have

lightning/src/ln/outbound_payment.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,21 +1117,21 @@ impl OutboundPayments {
11171117
if let Some(ev) = pending_retry_ev { pending_events.push(ev); }
11181118
}
11191119

1120-
pub(super) fn abandon_payment(&self, payment_id: PaymentId) -> Option<events::Event> {
1121-
let mut failed_ev = None;
1120+
pub(super) fn abandon_payment(&self, payment_id: PaymentId,
1121+
pending_events: &Mutex<Vec<events::Event>>
1122+
) {
11221123
let mut outbounds = self.pending_outbound_payments.lock().unwrap();
11231124
if let hash_map::Entry::Occupied(mut payment) = outbounds.entry(payment_id) {
11241125
if let Ok(()) = payment.get_mut().mark_abandoned() {
11251126
if payment.get().remaining_parts() == 0 {
1126-
failed_ev = Some(events::Event::PaymentFailed {
1127+
pending_events.lock().unwrap().push(events::Event::PaymentFailed {
11271128
payment_id,
11281129
payment_hash: payment.get().payment_hash().expect("PendingOutboundPayments::RetriesExceeded always has a payment hash set"),
11291130
});
11301131
payment.remove();
11311132
}
11321133
}
11331134
}
1134-
failed_ev
11351135
}
11361136

11371137
#[cfg(test)]

0 commit comments

Comments
 (0)