]> git.puffer.fish Git - matthieu/frr.git/commitdiff
2005-10-23 Paul Jakma <paul.jakma@sun.com>
authorpaul <paul>
Sun, 23 Oct 2005 15:26:24 +0000 (15:26 +0000)
committerpaul <paul>
Sun, 23 Oct 2005 15:26:24 +0000 (15:26 +0000)
* ospf_apiserver.c: (ospf_apiserver_term) This function should
  not have side-effects (eg segv) if no apiserver instances are
  active, ie be robust.

ospfd/ChangeLog
ospfd/ospf_apiserver.c

index a44612581f0573807bac0a31565885665ca218cf..72412d74c2d5e355a8cd452662ee843611003d2b 100644 (file)
@@ -1,5 +1,8 @@
 2005-10-23 Paul Jakma <paul.jakma@sun.com>
 
+       * ospf_apiserver.c: (ospf_apiserver_term) This function should
+         not have side-effects (eg segv) if no apiserver instances are
+         active, ie be robust.
        * ospf_vty.c: (show_ip_ospf) fix display of SPF timer if it
          has not yet been run.
 
index 784716b552c580db7ada0e1be4242f677e2455ca..577419da8e9becb6525b145d6ac5bbc1a9373834 100644 (file)
@@ -189,11 +189,13 @@ ospf_apiserver_term (void)
    * Free all client instances.  ospf_apiserver_free removes the node
    * from the list, so we examine the head of the list anew each time.
    */
-  while ( (apiserv = listgetdata (listhead (apiserver_list))) != NULL)
+  while ( apiserver_list &&
+         (apiserv = listgetdata (listhead (apiserver_list))) != NULL)
     ospf_apiserver_free (apiserv);
 
   /* Free client list itself */
-  list_delete (apiserver_list);
+  if (apiserver_list)
+    list_delete (apiserver_list);
 
   /* Free wildcard list */
   /* XXX  */