aboutsummaryrefslogtreecommitdiff
path: root/src/processor/stackwalker_x86.h
diff options
context:
space:
mode:
authorted.mielczarek@gmail.com <ted.mielczarek@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e>2013-08-19 18:31:51 +0000
committerted.mielczarek@gmail.com <ted.mielczarek@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e>2013-08-19 18:31:51 +0000
commit0510e34cbfe1b920b968c33e83101bed49c47aeb (patch)
tree3cc4bfb4e3c4bcd5a90599c7534116fef0c89426 /src/processor/stackwalker_x86.h
parentEnable the SIGABRT handler on desktop OS X (diff)
downloadbreakpad-0510e34cbfe1b920b968c33e83101bed49c47aeb.tar.xz
Allow setting a limit on the number of frames to be recovered by stack scanning.
Patch by Julian Seward <jseward@acm.org> R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=894264 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1206 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/processor/stackwalker_x86.h')
-rw-r--r--src/processor/stackwalker_x86.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/processor/stackwalker_x86.h b/src/processor/stackwalker_x86.h
index 45e9709b..0659a13b 100644
--- a/src/processor/stackwalker_x86.h
+++ b/src/processor/stackwalker_x86.h
@@ -74,14 +74,16 @@ class StackwalkerX86 : public Stackwalker {
// alternate conventions as guided by any WindowsFrameInfo available for the
// code in question.).
virtual StackFrame* GetContextFrame();
- virtual StackFrame* GetCallerFrame(const CallStack* stack);
+ virtual StackFrame* GetCallerFrame(const CallStack* stack,
+ bool stack_scan_allowed);
// Use windows_frame_info (derived from STACK WIN and FUNC records)
// to construct the frame that called frames.back(). The caller
// takes ownership of the returned frame. Return NULL on failure.
StackFrameX86* GetCallerByWindowsFrameInfo(
const vector<StackFrame*> &frames,
- WindowsFrameInfo* windows_frame_info);
+ WindowsFrameInfo* windows_frame_info,
+ bool stack_scan_allowed);
// Use cfi_frame_info (derived from STACK CFI records) to construct
// the frame that called frames.back(). The caller takes ownership
@@ -94,7 +96,8 @@ class StackwalkerX86 : public Stackwalker {
// %ebp points to the saved %ebp --- construct the frame that called
// frames.back(). The caller takes ownership of the returned frame.
// Return NULL on failure.
- StackFrameX86* GetCallerByEBPAtBase(const vector<StackFrame*> &frames);
+ StackFrameX86* GetCallerByEBPAtBase(const vector<StackFrame*> &frames,
+ bool stack_scan_allowed);
// Stores the CPU context corresponding to the innermost stack frame to
// be returned by GetContextFrame.