[bgpd] release peer specific clear queue in peer_free

2006-03-22 Paul Jakma <paul.jakma@sun.com>

	* bgpd.c: (peer_free) release the per-peer workqueue when
	  freeing the peer.
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index 3f0cad7..26897f3 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -1,3 +1,8 @@
+2006-03-22 Paul Jakma <paul.jakma@sun.com>
+
+	* bgpd.c: (peer_free) release the per-peer workqueue when
+	  freeing the peer.
+
 2006-03-19 Paul Jakma <paul.jakma@sun.com>
 
 	* bgpd/bgp_vty.c: Add includes to get several structs we want
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index 9f694f5..b574a9a 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -700,7 +700,10 @@
   
   if (peer->update_if)
     XFREE (MTYPE_PEER_UPDATE_SOURCE, peer->update_if);
-
+    
+  if (peer->clear_node_queue)
+    work_queue_free (peer->clear_node_queue);
+  
   memset (peer, 0, sizeof (struct peer));
   
   XFREE (MTYPE_BGP_PEER, peer);