diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog
index 009f7f9..29114c8 100644
--- a/bgpd/ChangeLog
+++ b/bgpd/ChangeLog
@@ -1,3 +1,8 @@
+2005-02-23 Hasso Tepper <hasso at quagga.net>
+
+	* bgp_route.c: Make reannouncing prefixes with changed attributes
+	  work again.
+
 2005-02-02 Akihiro Mizutani <mizutani@net-chef.net>
 
 	* bgp_vty.c: Deprecate "neighbor transparent-as" and "neighbor
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index 156120b..8c8fa52 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -1098,18 +1098,6 @@
 	new_select = ri;
     }
 
-    if ( (! old_select) || old_select != new_select
-	|| CHECK_FLAG (old_select->flags, BGP_INFO_ATTR_CHANGED))
-	{
-  if (old_select)
-    UNSET_FLAG (old_select->flags, BGP_INFO_SELECTED);
-  if (new_select)
-    {
-      SET_FLAG (new_select->flags, BGP_INFO_SELECTED);
-      UNSET_FLAG (new_select->flags, BGP_INFO_ATTR_CHANGED);
-    }
-      }
-
     result->old = old_select;
     result->new = new_select;
 
@@ -1188,6 +1176,14 @@
         if (old_select && old_select == new_select)
           if (! CHECK_FLAG (old_select->flags, BGP_INFO_ATTR_CHANGED))
             continue;
+  
+        if (old_select)
+          UNSET_FLAG (old_select->flags, BGP_INFO_SELECTED);
+        if (new_select)
+         {
+           SET_FLAG (new_select->flags, BGP_INFO_SELECTED);
+           UNSET_FLAG (new_select->flags, BGP_INFO_ATTR_CHANGED);
+         }
 
         bgp_process_announce_selected (rsclient, new_select, rn, &attr, 
               afi, safi);
@@ -1229,6 +1225,15 @@
        }
     }
 
+  if (old_select)
+    UNSET_FLAG (old_select->flags, BGP_INFO_SELECTED);
+  if (new_select)
+    {
+      SET_FLAG (new_select->flags, BGP_INFO_SELECTED);
+      UNSET_FLAG (new_select->flags, BGP_INFO_ATTR_CHANGED);
+    }
+
+
   /* Check each BGP peer. */
   LIST_LOOP (bgp->peer, peer, nn)
     {
