diff --git a/ospf6d/ChangeLog b/ospf6d/ChangeLog
index cdfd207..4f64cbc 100644
--- a/ospf6d/ChangeLog
+++ b/ospf6d/ChangeLog
@@ -1,3 +1,14 @@
+2004-09-13  Yasuhiro Ohara  <yasu@sfc.wide.ad.jp>
+
+	* ospf6_intra.c, ospf6_route.[ch]: try to fix assertion failure
+	in brouter's route_remove
+	* ospf6d.h: version 0.9.7o
+
+2004-09-12  Yasuhiro Ohara  <yasu@sfc.wide.ad.jp>
+
+	* ospf6_route.c: route_count_assert bug fix
+	* ospf6d.h: version 0.9.7n
+
 2004-09-03  Yasuhiro Ohara  <yasu@sfc.wide.ad.jp>
 
 	* ospf6_area.c, ospf6_route.c, ospf6_top.c, ospf6d.c:
diff --git a/ospf6d/ospf6_abr.c b/ospf6d/ospf6_abr.c
index 81992b2..503c13f 100644
--- a/ospf6d/ospf6_abr.c
+++ b/ospf6d/ospf6_abr.c
@@ -362,7 +362,7 @@
       summary->path.origin.id =
         ospf6_new_ls_id (summary->path.origin.type,
                          summary->path.origin.adv_router, area->lsdb);
-      ospf6_route_add (summary, summary_table);
+      summary = ospf6_route_add (summary, summary_table);
     }
   else
     {
diff --git a/ospf6d/ospf6_intra.c b/ospf6d/ospf6_intra.c
index d707ee7..4452e62 100644
--- a/ospf6d/ospf6_intra.c
+++ b/ospf6d/ospf6_intra.c
@@ -1302,6 +1302,9 @@
       if (lsentry->path.area_id != oa->area_id)
         continue;
 
+      if (CHECK_FLAG (lsentry->flag, OSPF6_ROUTE_WAS_REMOVED))
+        continue;
+
       if (CHECK_FLAG (lsentry->flag, OSPF6_ROUTE_REMOVE) &&
           CHECK_FLAG (lsentry->flag, OSPF6_ROUTE_ADD))
         {
diff --git a/ospf6d/ospf6_route.c b/ospf6d/ospf6_route.c
index b054c7b..7a5a394 100644
--- a/ospf6d/ospf6_route.c
+++ b/ospf6d/ospf6_route.c
@@ -288,6 +288,7 @@
           ospf6_route_delete (route);
           SET_FLAG (old->flag, OSPF6_ROUTE_ADD);
           ospf6_route_count_assert (table);
+
           return old;
         }
 
@@ -315,10 +316,11 @@
       ospf6_route_lock (route);
 
       SET_FLAG (route->flag, OSPF6_ROUTE_CHANGE);
+      ospf6_route_count_assert (table);
+
       if (table->hook_add)
         (*table->hook_add) (route);
 
-      ospf6_route_count_assert (table);
       return route;
     }
 
@@ -353,12 +355,12 @@
 
       ospf6_route_lock (route);
       table->count++;
+      ospf6_route_count_assert (table);
 
       SET_FLAG (route->flag, OSPF6_ROUTE_ADD);
       if (table->hook_add)
         (*table->hook_add) (route);
 
-      ospf6_route_count_assert (table);
       return route;
     }
 
@@ -414,12 +416,12 @@
     }
 
   table->count++;
+  ospf6_route_count_assert (table);
 
   SET_FLAG (route->flag, OSPF6_ROUTE_ADD);
   if (table->hook_add)
     (*table->hook_add) (route);
 
-  ospf6_route_count_assert (table);
   return route;
 }
 
@@ -470,13 +472,15 @@
         node->info = NULL; /* should unlock route_node here ? */
     }
 
+  table->count--;
+  ospf6_route_count_assert (table);
+
+  SET_FLAG (route->flag, OSPF6_ROUTE_WAS_REMOVED);
+
   if (table->hook_remove)
     (*table->hook_remove) (route);
 
   ospf6_route_unlock (route);
-  table->count--;
-
-  ospf6_route_count_assert (table);
 }
 
 struct ospf6_route *
diff --git a/ospf6d/ospf6_route.h b/ospf6d/ospf6_route.h
index 5835794..d9456a1 100644
--- a/ospf6d/ospf6_route.h
+++ b/ospf6d/ospf6_route.h
@@ -158,6 +158,7 @@
 #define OSPF6_ROUTE_BEST             0x08
 #define OSPF6_ROUTE_ACTIVE_SUMMARY   0x10
 #define OSPF6_ROUTE_DO_NOT_ADVERTISE 0x20
+#define OSPF6_ROUTE_WAS_REMOVED      0x40
 
 struct ospf6_route_table
 {
diff --git a/ospf6d/ospf6d.h b/ospf6d/ospf6d.h
index fefdfcc..6fcf200 100644
--- a/ospf6d/ospf6d.h
+++ b/ospf6d/ospf6d.h
@@ -22,7 +22,7 @@
 #ifndef OSPF6D_H
 #define OSPF6D_H
 
-#define OSPF6_DAEMON_VERSION    "0.9.7m"
+#define OSPF6_DAEMON_VERSION    "0.9.7o"
 
 /* global variables */
 extern int errno;
