diff options
| author | Russ White <russ@riw.us> | 2023-05-02 11:33:38 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-02 11:33:38 -0400 |
| commit | d0053da26b49166353c5f48c11fb11f6bea691d0 (patch) | |
| tree | 5eed5e43a11b695373a1951869489c05a63c27c0 /isisd/isis_flex_algo.c | |
| parent | da57946b0e9fdb24133860df931a53dbd6646f84 (diff) | |
| parent | 771d544a5b45f8509761ff78c85020715579206d (diff) | |
Merge pull request #13376 from louis-6wind/fix-flex-algo-mem-leak
isisd, lib: fix flex-algo memory leak
Diffstat (limited to 'isisd/isis_flex_algo.c')
| -rw-r--r-- | isisd/isis_flex_algo.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/isisd/isis_flex_algo.c b/isisd/isis_flex_algo.c index 0efc519eab..ef30987b8e 100644 --- a/isisd/isis_flex_algo.c +++ b/isisd/isis_flex_algo.c @@ -45,7 +45,7 @@ void *isis_flex_algo_data_alloc(void *voidarg) struct isis_flex_algo_alloc_arg *arg = voidarg; struct isis_flex_algo_data *data; - data = XCALLOC(MTYPE_FLEX_ALGO, sizeof(*data)); + data = XCALLOC(MTYPE_FLEX_ALGO, sizeof(struct isis_flex_algo_data)); for (int tree = SPFTREE_IPV4; tree < SPFTREE_COUNT; tree++) { for (int level = ISIS_LEVEL1; level <= ISIS_LEVEL2; level++) { @@ -70,6 +70,7 @@ void isis_flex_algo_data_free(void *voiddata) if (data->spftree[tree][level - 1]) isis_spftree_del( data->spftree[tree][level - 1]); + XFREE(MTYPE_FLEX_ALGO, data); } static struct isis_router_cap_fad * |
