summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--isisd/isis_circuit.c2
-rw-r--r--isisd/isis_events.c3
2 files changed, 2 insertions, 3 deletions
diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c
index 9ea2cfd0a1..5b62d3c518 100644
--- a/isisd/isis_circuit.c
+++ b/isisd/isis_circuit.c
@@ -840,12 +840,10 @@ void isis_circuit_down(struct isis_circuit *circuit)
if (circuit->u.bc.adjdb[0]) {
circuit->u.bc.adjdb[0]->del = isis_delete_adj;
list_delete(&circuit->u.bc.adjdb[0]);
- circuit->u.bc.adjdb[0] = NULL;
}
if (circuit->u.bc.adjdb[1]) {
circuit->u.bc.adjdb[1]->del = isis_delete_adj;
list_delete(&circuit->u.bc.adjdb[1]);
- circuit->u.bc.adjdb[1] = NULL;
}
if (circuit->u.bc.is_dr[0]) {
isis_dr_resign(circuit, 1);
diff --git a/isisd/isis_events.c b/isisd/isis_events.c
index 5574bbc50f..5237e99999 100644
--- a/isisd/isis_events.c
+++ b/isisd/isis_events.c
@@ -83,7 +83,8 @@ static void circuit_commence_level(struct isis_circuit *circuit, int level)
send_hello_sched(circuit, level, TRIGGERED_IIH_DELAY);
circuit->u.bc.lan_neighs[level - 1] = list_new();
- circuit->u.bc.adjdb[level - 1] = list_new();
+ if (!circuit->u.bc.adjdb[level - 1])
+ circuit->u.bc.adjdb[level - 1] = list_new();
}
}