Module: wine Branch: master Commit: 6d780048990b75effba8224f52688ca7b49a8e3b URL: http://source.winehq.org/git/wine.git/?a=commit;h=6d780048990b75effba8224f52...
Author: Alexandre Julliard julliard@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 }