summaryrefslogtreecommitdiffstats
path: root/ospfd
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2023-03-17 15:58:08 +0100
committerDonald Sharp <sharpd@nvidia.com>2023-03-17 15:58:08 +0100
commit52ff0e3ed4ea671f42e3ab5d6d97dd6312e2f87f (patch)
tree13a82e6b14ec0a85bdffd780b61e9ed1b0e08786 /ospfd
parentospfd: Fix ospf_ti_lfa drop of an entire table (diff)
downloadfrr-52ff0e3ed4ea671f42e3ab5d6d97dd6312e2f87f.tar.xz
frr-52ff0e3ed4ea671f42e3ab5d6d97dd6312e2f87f.zip
ospfd: Free up q_space in early return path
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'ospfd')
-rw-r--r--ospfd/ospf_ti_lfa.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ospfd/ospf_ti_lfa.c b/ospfd/ospf_ti_lfa.c
index 385428f8e..da9428aba 100644
--- a/ospfd/ospf_ti_lfa.c
+++ b/ospfd/ospf_ti_lfa.c
@@ -689,6 +689,11 @@ static void ospf_ti_lfa_generate_q_spaces(struct ospf_area *area,
"%s: NO backup path found for root %pI4 and destination %pI4 for %s, aborting ...",
__func__, &p_space->root->id, &q_space->root->id,
res_buf);
+
+ XFREE(MTYPE_OSPF_Q_SPACE, q_space->p_node_info);
+ XFREE(MTYPE_OSPF_Q_SPACE, q_space->q_node_info);
+ XFREE(MTYPE_OSPF_Q_SPACE, q_space);
+
return;
}