aboutsummaryrefslogtreecommitdiff
path: root/src/processor
diff options
context:
space:
mode:
Diffstat (limited to 'src/processor')
-rw-r--r--src/processor/stackwalker.cc5
-rw-r--r--src/processor/stackwalker.h4
2 files changed, 4 insertions, 5 deletions
diff --git a/src/processor/stackwalker.cc b/src/processor/stackwalker.cc
index f2a068a5..0103e850 100644
--- a/src/processor/stackwalker.cc
+++ b/src/processor/stackwalker.cc
@@ -44,7 +44,6 @@ Stackwalker::Stackwalker(MemoryRegion* memory, MinidumpModuleList* modules,
void Stackwalker::Walk(StackFrames *frames) {
frames->clear();
- bool resolve_symbols = (modules_ && supplier_);
SourceLineResolver resolver;
// Begin with the context frame, and keep getting callers until there are
@@ -64,12 +63,12 @@ void Stackwalker::Walk(StackFrames *frames) {
if (module) {
frame->module_name = *(module->GetName());
frame->module_base = module->base_address();
- if (resolve_symbols) {
+ if (modules_ && supplier_) {
string symbol_file = supplier_->GetSymbolFile(module, report_);
if (!symbol_file.empty()) {
resolver.LoadModule(*(module->GetName()), symbol_file);
+ resolver.FillSourceLineInfo(frame.get());
}
- resolver.FillSourceLineInfo(frame.get());
}
}
}
diff --git a/src/processor/stackwalker.h b/src/processor/stackwalker.h
index 34d9a3f4..07a78ca2 100644
--- a/src/processor/stackwalker.h
+++ b/src/processor/stackwalker.h
@@ -45,8 +45,8 @@ class Stackwalker {
virtual ~Stackwalker() {}
// Fills the given vector of StackFrames by calling GetContextFrame and
- // GetCallerFrame, and populating the returned frames with module
- // offset and name information if possible.
+ // GetCallerFrame, and populating the returned frames with all available
+ // data.
void Walk(StackFrames *frames);
protected: