]> git.puffer.fish Git - mirror/frr.git/commitdiff
zebra: Cleanup dest assignment 15224/head
authorDonald Sharp <sharpd@nvidia.com>
Sun, 21 Jan 2024 02:32:36 +0000 (21:32 -0500)
committerDonald Sharp <sharpd@nvidia.com>
Wed, 24 Jan 2024 22:10:45 +0000 (17:10 -0500)
dest was shadowing dest inside of an if statement additionally
both legs needed dest to be assigned.  Let's clean this up a
slight bit and use it appropriately

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
zebra/zebra_rib.c

index 4b5f81a3df51adb8a5f623e0ad51125b8335d4e6..9e89e32d5d5565e35349b76baaa10e07e873cc53 100644 (file)
@@ -2874,11 +2874,10 @@ static void process_subq_early_route_add(struct zebra_early_route *ere)
        SET_FLAG(re->status, ROUTE_ENTRY_CHANGED);
        rib_addnode(rn, re, 1);
 
+       dest = rib_dest_from_rnode(rn);
        /* Free implicit route.*/
        if (same) {
-               rib_dest_t *dest = rn->info;
-
-               if (same == dest->selected_fib)
+               if (dest && same == dest->selected_fib)
                        SET_FLAG(same->status, ROUTE_ENTRY_ROUTE_REPLACING);
                rib_delnode(rn, same);
        }
@@ -2886,7 +2885,6 @@ static void process_subq_early_route_add(struct zebra_early_route *ere)
        /* See if we can remove some RE entries that are queued for
         * removal, but won't be considered in rib processing.
         */
-       dest = rib_dest_from_rnode(rn);
        RNODE_FOREACH_RE_SAFE (rn, re, same) {
                if (CHECK_FLAG(re->status, ROUTE_ENTRY_REMOVED)) {
                        /* If the route was used earlier, must retain it. */