Previously, failure to look up the given partition was detected after
the loop by checking whether the loop ran over all existing
partitions.  Initialize part to NULL and check for that instead.  This
retains the behavior, but expresses it in a way the compiler
understands better.

* mach-defpager/default_pager.c (destroy_paging_partition): Initialize
part to NULL and check for it still being NULL after the loop.
---
 mach-defpager/default_pager.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mach-defpager/default_pager.c b/mach-defpager/default_pager.c
index 33d72b3..1b9d511 100644
--- a/mach-defpager/default_pager.c
+++ b/mach-defpager/default_pager.c
@@ -1991,7 +1991,7 @@ destroy_paging_partition(name, pp_private)
        void **pp_private;
 {
        unsigned int    id = part_id(name);
-       partition_t     part;
+       partition_t     part = NULL;
        boolean_t               all_ok = TRUE;
        default_pager_t         entry;
        int                     pindex;
@@ -2006,7 +2006,7 @@ destroy_paging_partition(name, pp_private)
                part = partition_of(pindex);
                if (part && (part->id == id)) break;
        }
-       if (pindex == all_partitions.n_partitions) {
+       if (! part) {
                pthread_mutex_unlock(&all_partitions.lock);
                return KERN_INVALID_ARGUMENT;
        }
-- 
1.9.0


Reply via email to