Some fixes to isisd done by me and Cougar in the spring of 2003. See
changelog for details.
diff --git a/isisd/isis_spf.c b/isisd/isis_spf.c
index d694981..37c435e 100644
--- a/isisd/isis_spf.c
+++ b/isisd/isis_spf.c
@@ -743,8 +743,10 @@
       anode = listhead (adj_list);
       while (anode) {
         adj = getdata (anode);
-        if (!speaks (&adj->nlpids, family))
+        if (!speaks (&adj->nlpids, family)) {
+          anode = nextnode (anode); 
           continue;
+        }
         switch (adj->sys_type) {
         case ISIS_SYSTYPE_ES:
           isis_spf_add_local (spftree, VTYPE_ES, adj->sysid, adj,