diff --git a/wallet/wallet.c b/wallet/wallet.c index 99e604651..e65b40602 100644 --- a/wallet/wallet.c +++ b/wallet/wallet.c @@ -737,9 +737,12 @@ void wallet_channel_save(struct wallet *w, struct wallet_channel *chan) /* Need to store the peer first */ stmt = db_prepare(w->db, "INSERT INTO peers (node_id, address) VALUES (?, ?);"); sqlite3_bind_pubkey(stmt, 1, &chan->peer->id); - sqlite3_bind_text(stmt, 2, - type_to_string(tmpctx, struct wireaddr, &chan->peer->addr), - -1, SQLITE_TRANSIENT); + if (chan->peer->addr.type == ADDR_TYPE_PADDING) + sqlite3_bind_null(stmt, 2); + else + sqlite3_bind_text(stmt, 2, + type_to_string(tmpctx, struct wireaddr, &chan->peer->addr), + -1, SQLITE_TRANSIENT); db_exec_prepared(w->db, stmt); p->dbid = sqlite3_last_insert_rowid(w->db->sql); }