From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31754 invoked by alias); 29 Feb 2008 15:11:39 -0000 Received: (qmail 31728 invoked by uid 9112); 29 Feb 2008 15:11:39 -0000 Date: Fri, 29 Feb 2008 15:11:00 -0000 Message-ID: <20080229151139.31713.qmail@sourceware.org> From: mark@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: Don't crash when there is a bad outer frame. X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: c3a795648c64b2d5f693a5ffaad6fa0775958ca5 X-Git-Newrev: 8e6ab5488ff4b517582979b2fa0b8384ac6b0e09 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/msg00286.txt.bz2 The branch, master has been updated via 8e6ab5488ff4b517582979b2fa0b8384ac6b0e09 (commit) from c3a795648c64b2d5f693a5ffaad6fa0775958ca5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 8e6ab5488ff4b517582979b2fa0b8384ac6b0e09 Author: Mark Wielaard Date: Fri Feb 29 16:01:55 2008 +0100 Don't crash when there is a bad outer frame. frysk-core/frysk/stepping/ChangeLog 2008-02-29 Mark Wielaard * StepOverTestState.java (handleUpdate): Don't crash when there is a bad outer frame. ----------------------------------------------------------------------- Summary of changes: frysk-core/frysk/stepping/ChangeLog | 5 +++++ frysk-core/frysk/stepping/StepOverTestState.java | 10 ++++++++++ 2 files changed, 15 insertions(+), 0 deletions(-) First 500 lines of diff: diff --git a/frysk-core/frysk/stepping/ChangeLog b/frysk-core/frysk/stepping/ChangeLog index 8b0ea9c..8f0e9d2 100644 --- a/frysk-core/frysk/stepping/ChangeLog +++ b/frysk-core/frysk/stepping/ChangeLog @@ -1,3 +1,8 @@ +2008-02-29 Mark Wielaard + + * StepOverTestState.java (handleUpdate): Don't crash when there is + a bad outer frame. + 2008-02-28 Andrew Cagney * SteppingEngine.java: Use frysk.rsl. diff --git a/frysk-core/frysk/stepping/StepOverTestState.java b/frysk-core/frysk/stepping/StepOverTestState.java index 8664bb4..5e7b38e 100644 --- a/frysk-core/frysk/stepping/StepOverTestState.java +++ b/frysk-core/frysk/stepping/StepOverTestState.java @@ -86,6 +86,16 @@ public class StepOverTestState extends State { * it exits - success! */ Frame frame = newFrame.getOuter(); + if (frame == null) + { + // But urgh... Where did our outer frame go... + // We need to just try to keep stepping till we are + // able to get a solid frame again. + tse.getSteppingEngine().continueForStepping(this.task, + true); + return this; + } + tse.getSteppingEngine().setBreakpoint(this.task, frame.getAddress()); return new StepOverState(this.task); hooks/post-receive -- frysk system monitor/debugger