bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 5/6] mach-defpager: fix the page offsets returned by pager_pages


From: Justus Winter
Subject: [PATCH 5/6] mach-defpager: fix the page offsets returned by pager_pages
Date: Sat, 16 Nov 2013 10:58:18 +0100

Previously the increment was outside the loop body, turning it into a
dead increment.

Move the increment into the loop body as it is done in the true branch
above. This fixes the offsets recorded in the default_pager_page_t
objects.

Found using the Clang Static Analyzer.

* mach-defpager/default_pager.c (pager_pages): Fix returned page offsets.
---
 mach-defpager/default_pager.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/mach-defpager/default_pager.c b/mach-defpager/default_pager.c
index 8e466f7..a65a5fe 100644
--- a/mach-defpager/default_pager.c
+++ b/mach-defpager/default_pager.c
@@ -879,12 +879,13 @@ pager_pages(pager, pages, numpages)
                        offset += vm_page_size;
                }
        } else {
-               for (emap = &map[size]; map < emap; map++)
+               for (emap = &map[size]; map < emap; map++) {
                        if ( ! no_block(*map) ) {
                                if (actual++ < numpages)
                                        pages++->dpp_offset = offset;
                        }
-               offset += vm_page_size;
+                       offset += vm_page_size;
+               }
        }
        return actual;
 }
-- 
1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]