From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11852 invoked by alias); 18 Jan 2008 09:27:48 -0000 Received: (qmail 11827 invoked by uid 9514); 18 Jan 2008 09:27:47 -0000 Date: Fri, 18 Jan 2008 09:27:00 -0000 Message-ID: <20080118092747.11812.qmail@sourceware.org> From: pmuldoon@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: 2008-01-18 Phil Muldoon X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: e463ac8102efbc44d7f39c190085ff0522819fd9 X-Git-Newrev: ec719f9b7195762e4a4dea29e7b14932b2bfcf6a Mailing-List: contact frysk-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-cvs-owner@sourceware.org Reply-To: frysk@sourceware.org X-SW-Source: 2008-q1/txt/msg00092.txt.bz2 The branch, master has been updated via ec719f9b7195762e4a4dea29e7b14932b2bfcf6a (commit) from e463ac8102efbc44d7f39c190085ff0522819fd9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit ec719f9b7195762e4a4dea29e7b14932b2bfcf6a Author: Phil Muldoon Date: Thu Jan 17 23:22:05 2008 -0500 2008-01-18 Phil Muldoon * DwflFactory.java (updateDwfl): Do not overrun map length on vdso check. ----------------------------------------------------------------------- Summary of changes: frysk-core/frysk/dwfl/ChangeLog | 5 +++++ frysk-core/frysk/dwfl/DwflFactory.java | 14 +++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) First 500 lines of diff: diff --git a/frysk-core/frysk/dwfl/ChangeLog b/frysk-core/frysk/dwfl/ChangeLog index 4da4372..37c57c7 100644 --- a/frysk-core/frysk/dwfl/ChangeLog +++ b/frysk-core/frysk/dwfl/ChangeLog @@ -1,3 +1,8 @@ +2008-01-18 Phil Muldoon + + * DwflFactory.java (updateDwfl): Do not overrun map + length on vdso check. + 2008-01-14 Mike Cvet * ElfSectionCache.java: Added. diff --git a/frysk-core/frysk/dwfl/DwflFactory.java b/frysk-core/frysk/dwfl/DwflFactory.java index 287a053..8721e2b 100644 --- a/frysk-core/frysk/dwfl/DwflFactory.java +++ b/frysk-core/frysk/dwfl/DwflFactory.java @@ -120,9 +120,17 @@ public class DwflFactory // Condensing elf mappings into a single Dwfl_Module per elf image. // Base case: - // While the map is empty skip. - while (! isVDSO(proc, maps[count]) && isEmptyMap(maps[count])) - count++; + // While the map is empty skip + + // XXX: Add an explicit if count == maps.length -1 break. What is the + // failure case for not finding a [vdso]? + while (! isVDSO(proc, maps[count]) && isEmptyMap(maps[count])) + { + if (count == (maps.length-1)) + break; + count++; + } + // If map represents the vdso section, report vdso. if (isVDSO(proc, maps[count])) { logger.log(Level.FINE, "Found the vdso!\n"); hooks/post-receive -- frysk system monitor/debugger