Alexandre Julliard : libwine: Avoid a potential loop in reserve_area.

Alexandre Julliard julliard at winehq.org
Wed Jun 22 11:48:40 CDT 2011


Module: wine
Branch: master
Commit: 6d780048990b75effba8224f52688ca7b49a8e3b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=6d780048990b75effba8224f52688ca7b49a8e3b

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Jun 22 13:43:26 2011 +0200

libwine: Avoid a potential loop in reserve_area.

---

 libs/wine/mmap.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/libs/wine/mmap.c b/libs/wine/mmap.c
index 0e02d16..63a597d 100644
--- a/libs/wine/mmap.c
+++ b/libs/wine/mmap.c
@@ -277,11 +277,11 @@ static inline void reserve_area( void *addr, void *end )
         wine_mmap_add_reserved_area( addr, size );
         return;
     }
-    if (size > granularity_mask + 1)
+    size = (size / 2) & ~granularity_mask;
+    if (size)
     {
-        size_t new_size = (size / 2) & ~granularity_mask;
-        reserve_area( addr, (char *)addr + new_size );
-        reserve_area( (char *)addr + new_size, end );
+        reserve_area( addr, (char *)addr + size );
+        reserve_area( (char *)addr + size, end );
     }
 #endif
 }




More information about the wine-cvs mailing list