diff --git a/lightningd/channel.c b/lightningd/channel.c index b3d56c6aa..123ca84a5 100644 --- a/lightningd/channel.c +++ b/lightningd/channel.c @@ -600,6 +600,11 @@ struct channel *any_channel_by_scid(struct lightningd *ld, if (chan->scid && short_channel_id_eq(scid, chan->scid)) return chan; + /* We also want to find the channel by its local alias + * when we forward. */ + if (chan->alias[LOCAL] && + short_channel_id_eq(scid, chan->alias[LOCAL])) + return chan; } } return NULL; diff --git a/plugins/libplugin.c b/plugins/libplugin.c index 3852bd4aa..577c45ee3 100644 --- a/plugins/libplugin.c +++ b/plugins/libplugin.c @@ -1629,6 +1629,9 @@ static struct listpeers_channel *json_to_listpeers_channel(const tal_t *ctx, chan->alias[REMOTE]); } else chan->alias[REMOTE] = NULL; + } else { + chan->alias[LOCAL] = NULL; + chan->alias[REMOTE] = NULL; } json_to_msat(buffer, tmsattok, &chan->total_msat);