| 7084 | } |
| 7085 | |
| 7086 | static bool is_duplicate(struct db *db, const struct chain_coin_mvt *chain_mvt) |
| 7087 | { |
| 7088 | const char *nonchannel_acctname; |
| 7089 | u64 channel_dbid; |
| 7090 | |
| 7091 | /* If we migrated in account_migration.c, it will use the |
| 7092 | * nonchannel id! But we don't worry about adding a |
| 7093 | * non-channel which conflicts with a channel. */ |
| 7094 | if (chain_mvt->account.channel) { |
| 7095 | nonchannel_acctname = fmt_channel_id(tmpctx, &chain_mvt->account.channel->cid); |
| 7096 | channel_dbid = chain_mvt->account.channel->dbid; |
| 7097 | } else { |
| 7098 | nonchannel_acctname = chain_mvt->account.alt_account; |
| 7099 | channel_dbid = 0; |
| 7100 | } |
| 7101 | |
| 7102 | return find_duplicate_chain_move(db, nonchannel_acctname, |
| 7103 | channel_dbid, |
| 7104 | &chain_mvt->outpoint, |
| 7105 | chain_mvt->spending_txid, |
| 7106 | chain_mvt->tags, |
| 7107 | INT64_MAX); |
| 7108 | } |
| 7109 | |
| 7110 | void wallet_save_chain_mvt(struct lightningd *ld, |
| 7111 | const struct chain_coin_mvt *chain_mvt) |
no test coverage detected