diff --git a/ospfd/ospf_route.c b/ospfd/ospf_route.c
index d2e5e1e..a5d6d18 100644
--- a/ospfd/ospf_route.c
+++ b/ospfd/ospf_route.c
@@ -429,7 +429,7 @@
 void
 ospf_intra_add_stub (struct route_table *rt, struct router_lsa_link *link,
 		     struct vertex *v, struct ospf_area *area,
-		     int parent_is_root)
+		     int parent_is_root, int lsa_pos)
 {
   u_int32_t cost;
   struct route_node *rn;
@@ -577,7 +577,7 @@
       if (IS_DEBUG_OSPF_EVENT)
 	zlog_debug ("ospf_intra_add_stub(): this network is on this router");
 
-      if ((oi = ospf_if_lookup_by_prefix (area->ospf, &p)))
+      if ((oi = ospf_if_lookup_by_lsa_pos (area, lsa_pos)))
 	{
 	  if (IS_DEBUG_OSPF_EVENT)
 	    zlog_debug ("ospf_intra_add_stub(): the interface is %s",
diff --git a/ospfd/ospf_route.h b/ospfd/ospf_route.h
index 17ab68e..5742b46 100644
--- a/ospfd/ospf_route.h
+++ b/ospfd/ospf_route.h
@@ -141,7 +141,7 @@
 extern void ospf_intra_add_stub (struct route_table *,
 				 struct router_lsa_link *, struct vertex *,
 				 struct ospf_area *,
-				 int parent_is_root);
+				 int parent_is_root, int);
 
 extern int ospf_route_cmp (struct ospf *, struct ospf_route *,
 			   struct ospf_route *);
diff --git a/ospfd/ospf_spf.c b/ospfd/ospf_spf.c
index 26fe485..6682951 100644
--- a/ospfd/ospf_spf.c
+++ b/ospfd/ospf_spf.c
@@ -973,6 +973,7 @@
       u_char *lim;
       struct router_lsa_link *l;
       struct router_lsa *rlsa;
+      int lsa_pos = 0;
 
       if (IS_DEBUG_OSPF_EVENT)
         zlog_debug ("ospf_process_stubs():processing router LSA, id: %s",
@@ -994,7 +995,8 @@
                 (l->m[0].tos_count * OSPF_ROUTER_LSA_TOS_SIZE));
 
           if (l->m[0].type == LSA_LINK_TYPE_STUB)
-            ospf_intra_add_stub (rt, l, v, area, parent_is_root);
+	    ospf_intra_add_stub (rt, l, v, area, parent_is_root, lsa_pos);
+	  lsa_pos++;
         }
     }
 
