Browse Source

invoice: simplify find_invoice_by_label.

Passing a list_head is a remnant of when we had two lists.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
ppa-0.6.1
Rusty Russell 7 years ago
committed by Christian Decker
parent
commit
fbc5ba12e4
  1. 12
      lightningd/invoice.c

12
lightningd/invoice.c

@ -33,12 +33,12 @@ struct invoice *find_unpaid(struct invoices *invs, const struct sha256 *rhash)
return NULL; return NULL;
} }
static struct invoice *find_invoice_by_label(const struct list_head *list, static struct invoice *find_invoice_by_label(const struct invoices *invs,
const char *label) const char *label)
{ {
struct invoice *i; struct invoice *i;
list_for_each(list, i, list) { list_for_each(&invs->invlist, i, list) {
if (streq(i->label, label)) if (streq(i->label, label))
return i; return i;
} }
@ -133,7 +133,7 @@ static void json_invoice(struct command *cmd,
invoice->label = tal_strndup(invoice, buffer + label->start, invoice->label = tal_strndup(invoice, buffer + label->start,
label->end - label->start); label->end - label->start);
if (find_invoice_by_label(&invs->invlist, invoice->label)) { if (find_invoice_by_label(invs, invoice->label)) {
command_fail(cmd, "Duplicate label '%s'", invoice->label); command_fail(cmd, "Duplicate label '%s'", invoice->label);
return; return;
} }
@ -269,7 +269,7 @@ static void json_delinvoice(struct command *cmd,
label = tal_strndup(cmd, buffer + labeltok->start, label = tal_strndup(cmd, buffer + labeltok->start,
labeltok->end - labeltok->start); labeltok->end - labeltok->start);
i = find_invoice_by_label(&invs->invlist, label); i = find_invoice_by_label(invs, label);
if (!i) { if (!i) {
command_fail(cmd, "Unknown invoice"); command_fail(cmd, "Unknown invoice");
return; return;
@ -326,7 +326,7 @@ static void json_waitanyinvoice(struct command *cmd,
} else { } else {
label = tal_strndup(cmd, buffer + labeltok->start, label = tal_strndup(cmd, buffer + labeltok->start,
labeltok->end - labeltok->start); labeltok->end - labeltok->start);
i = find_invoice_by_label(&invs->invlist, label); i = find_invoice_by_label(invs, label);
if (!i) { if (!i) {
command_fail(cmd, "Label not found"); command_fail(cmd, "Label not found");
return; return;
@ -381,7 +381,7 @@ static void json_waitinvoice(struct command *cmd,
/* Search in paid invoices, if found return immediately */ /* Search in paid invoices, if found return immediately */
label = tal_strndup(cmd, buffer + labeltok->start, labeltok->end - labeltok->start); label = tal_strndup(cmd, buffer + labeltok->start, labeltok->end - labeltok->start);
i = find_invoice_by_label(&invs->invlist, label); i = find_invoice_by_label(invs, label);
if (!i) { if (!i) {
command_fail(cmd, "Label not found"); command_fail(cmd, "Label not found");

Loading…
Cancel
Save