aboutsummaryrefslogtreecommitdiff
path: root/src/google_breakpad/processor
diff options
context:
space:
mode:
authorted.mielczarek@gmail.com <ted.mielczarek@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e>2013-04-16 17:55:21 +0000
committerted.mielczarek@gmail.com <ted.mielczarek@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e>2013-04-16 17:55:21 +0000
commit91c9518af26cbafc540d58d4c3d106b580171a2a (patch)
tree284de3f173d9f23bc8f7445ab848d3eb8b13683d /src/google_breakpad/processor
parentESP is zero in dumps created by CrashGenerationClient::RequestDump on i386 Linux (diff)
downloadbreakpad-91c9518af26cbafc540d58d4c3d106b580171a2a.tar.xz
Don't print an error when a user-set max frames limit has been reached in the stackwalker
Patch by Julian Seward <jseward@acm.org>, R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=859745 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1150 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/google_breakpad/processor')
-rw-r--r--src/google_breakpad/processor/stackwalker.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/google_breakpad/processor/stackwalker.h b/src/google_breakpad/processor/stackwalker.h
index f09291fe..3640cc73 100644
--- a/src/google_breakpad/processor/stackwalker.h
+++ b/src/google_breakpad/processor/stackwalker.h
@@ -88,7 +88,10 @@ class Stackwalker {
const CodeModules* modules,
StackFrameSymbolizer* resolver_helper);
- static void set_max_frames(uint32_t max_frames) { max_frames_ = max_frames; }
+ static void set_max_frames(uint32_t max_frames) {
+ max_frames_ = max_frames;
+ max_frames_set_ = true;
+ }
static uint32_t max_frames() { return max_frames_; }
protected:
@@ -196,6 +199,11 @@ class Stackwalker {
// The maximum number of frames Stackwalker will walk through.
// This defaults to 1024 to prevent infinite loops.
static uint32_t max_frames_;
+
+ // Keep track of whether max_frames_ has been set by the user, since
+ // it affects whether or not an error message is printed in the case
+ // where an unwind got stopped by the limit.
+ static bool max_frames_set_;
};
} // namespace google_breakpad