From: Nicholas Nethercote Date: Tue, 28 Jun 2005 02:45:29 +0000 (+0000) Subject: Don't mark segments as SF_FIXED when VKI_MAP_FIXED isn't specified. X-Git-Tag: svn/VALGRIND_3_0_0~279 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7d5f7ed4682ccefcf0f8742843ba162cdffbf9d9;p=thirdparty%2Fvalgrind.git Don't mark segments as SF_FIXED when VKI_MAP_FIXED isn't specified. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4039 --- diff --git a/coregrind/m_libcmman.c b/coregrind/m_libcmman.c index cf4fd3a8f5..59a0df117f 100644 --- a/coregrind/m_libcmman.c +++ b/coregrind/m_libcmman.c @@ -46,14 +46,12 @@ void* VG_(mmap)( void* start, SizeT length, if (!(flags & VKI_MAP_FIXED)) { start = (void *)VG_(find_map_space)((Addr)start, length, !!(flags & VKI_MAP_CLIENT)); - - flags |= VKI_MAP_FIXED; } if (start == 0) return (void *)-1; res = VG_(mmap_native)(start, length, prot, - flags & ~(VKI_MAP_NOSYMS | VKI_MAP_CLIENT), + (flags | VKI_MAP_FIXED) & ~(VKI_MAP_NOSYMS | VKI_MAP_CLIENT), fd, offset); // Check it ended up in the right place.