From: Donald Sharp Date: Tue, 8 Sep 2015 13:24:21 +0000 (-0700) Subject: Fix bgp_exit crash X-Git-Tag: frr-2.0-rc1~1265 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=2e02b9b2d1ed29975001d6917f9f726854ec5559;p=matthieu%2Ffrr.git Fix bgp_exit crash Ticket: CM-7358 Reviewed-by: CCR-3462 Testing: See bug --- diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 3827fb436a..33d822dad6 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -2213,6 +2213,10 @@ bgp_process (struct bgp *bgp, struct bgp_node *rn, afi_t afi, safi_t safi) if (CHECK_FLAG (rn->flags, BGP_NODE_PROCESS_SCHEDULED)) return; + if ( (bm->process_main_queue == NULL) || + (bm->process_rsclient_queue == NULL) ) + bgp_process_queue_init (); + pqnode = XCALLOC (MTYPE_BGP_PROCESS_QUEUE, sizeof (struct bgp_process_queue)); if (!pqnode) @@ -2245,6 +2249,10 @@ bgp_add_eoiu_mark (struct bgp *bgp, bgp_table_t type) { struct bgp_process_queue *pqnode; + if ( (bm->process_main_queue == NULL) || + (bm->process_rsclient_queue == NULL) ) + bgp_process_queue_init (); + pqnode = XCALLOC (MTYPE_BGP_PROCESS_QUEUE, sizeof (struct bgp_process_queue)); if (!pqnode)