mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-18 21:35:11 +01:00
gossipd: fix uninitialized free on short_route in goto path
Fix a path where tal_free is called on an uninitialized variable If the first `goto bad_total` executes, then that path has uninitialized `short_route` but bad_total passes through to `out` whose first call is tal_free(short_route). This was noticed by a maybe-uninitialized heuristic on gcc 7.4.0: gossipd/routing.c: In function ‘find_shorter_route’: gossipd/routing.c:1096:2: error: ‘short_route’ may be used uninitialized in this function [-Werror=maybe-uninitialized] tal_free(short_route); Reported-by: @ZmnSCPxj <https://github.com/ElementsProject/lightning/pull/2674#issuecomment-495617253> Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
parent
4640d18ef0
commit
3f035cb3cc
@ -988,7 +988,7 @@ find_shorter_route(const tal_t *ctx, struct routing_state *rstate,
|
||||
struct amount_msat *fee)
|
||||
{
|
||||
struct unvisited *unvisited;
|
||||
struct chan **short_route;
|
||||
struct chan **short_route = NULL;
|
||||
struct amount_msat long_cost, short_cost, cost_diff;
|
||||
u64 min_bias, max_bias;
|
||||
double riskfactor;
|
||||
|
Loading…
Reference in New Issue
Block a user