diff options
Diffstat (limited to 'src/google_breakpad/processor/stackwalker.h')
-rw-r--r-- | src/google_breakpad/processor/stackwalker.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/google_breakpad/processor/stackwalker.h b/src/google_breakpad/processor/stackwalker.h index 9e678e3c..f09291fe 100644 --- a/src/google_breakpad/processor/stackwalker.h +++ b/src/google_breakpad/processor/stackwalker.h @@ -43,6 +43,7 @@ #include <set> #include <string> +#include <vector> #include "common/using_std_string.h" #include "google_breakpad/common/breakpad_types.h" @@ -57,6 +58,7 @@ class MinidumpContext; class StackFrameSymbolizer; using std::set; +using std::vector; class Stackwalker { public: @@ -66,7 +68,15 @@ class Stackwalker { // GetCallerFrame. The frames are further processed to fill all available // data. Returns true if the stackwalk completed, or false if it was // interrupted by SymbolSupplier::GetSymbolFile(). - bool Walk(CallStack* stack); + // Upon return, modules_without_symbols will be populated with pointers to + // the code modules (CodeModule*) that DON'T have symbols. + // modules_without_symbols DOES NOT take ownership of the code modules. + // The lifetime of these code modules is the same as the lifetime of the + // CodeModules passed to the StackWalker constructor (which currently + // happens to be the lifetime of the Breakpad's ProcessingState object). + // There is a check for duplicate modules so no duplicates are expected. + bool Walk(CallStack* stack, + vector<const CodeModule*>* modules_without_symbols); // Returns a new concrete subclass suitable for the CPU that a stack was // generated on, according to the CPU type indicated by the context |