|
From: <sv...@va...> - 2005-06-28 22:39:07
|
Author: njn
Date: 2005-06-28 23:38:24 +0100 (Tue, 28 Jun 2005)
New Revision: 4046
Log:
Fix off-by-one error that was causing four leak-checking regression test
failures for me, and also fixes bug #106293 for me. Let's hope it has=20
the same effect for others.
Modified:
trunk/coregrind/m_aspacemgr/aspacemgr.c
Modified: trunk/coregrind/m_aspacemgr/aspacemgr.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_aspacemgr/aspacemgr.c 2005-06-28 22:14:53 UTC (rev =
4045)
+++ trunk/coregrind/m_aspacemgr/aspacemgr.c 2005-06-28 22:38:24 UTC (rev =
4046)
@@ -1163,15 +1163,14 @@
=20
for (i =3D 0; i < segments_used; i++) {
s =3D &segments[i];
- flags =3D s->flags & (SF_SHARED|SF_MMAP|SF_VALGRIND
- |SF_CORE|SF_STACK);
+ flags =3D s->flags & (SF_SHARED|SF_MMAP|SF_VALGRIND|SF_CORE|SF_STA=
CK);
if (flags !=3D SF_MMAP && flags !=3D SF_STACK)
continue;
if ((s->prot & (VKI_PROT_READ|VKI_PROT_WRITE))=20
!=3D (VKI_PROT_READ|VKI_PROT_WRITE))
continue;
if (!VG_(is_client_addr)(s->addr) ||
- !VG_(is_client_addr)(s->addr+s->len))
+ !VG_(is_client_addr)(s->addr+s->len-1))
continue;
=20
(*add_rootrange)(s->addr, s->len);
|