summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@theqtcompany.com>2015-04-02 14:28:28 +0200
committerUlf Hermann <ulf.hermann@theqtcompany.com>2015-04-02 15:44:15 +0300
commit652561a29f37970722d2231f759631e0932e0288 (patch)
tree09b69da5abc76fd1a68cae1f8e5ff4af5b781cb6
parentb982a98e6ad4e6e1517ad02c5f2f3417bc413621 (diff)
Actually delete the demangled char * once we're done with it
Change-Id: I7f98f6868fccedd5bfdb8f31fc7bd9c3697478ff Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
-rw-r--r--app/perfunwind.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/app/perfunwind.cpp b/app/perfunwind.cpp
index ed54eda..2afc124 100644
--- a/app/perfunwind.cpp
+++ b/app/perfunwind.cpp
@@ -298,11 +298,12 @@ static PerfUnwind::Frame lookupSymbol(PerfUnwind::UnwindInfo *ui, Dwfl *dwfl, Dw
ui->isInterworking = true;
// Adjust it back. The symtab entries are 1 off for all practical purposes.
- return PerfUnwind::Frame((do_adjust && (sym.st_value & 1)) ? sym.st_value - 1 :
+ PerfUnwind::Frame frame((do_adjust && (sym.st_value & 1)) ? sym.st_value - 1 :
sym.st_value,
isKernel, status == 0 ? demangled : symname, elfFile, srcFile,
line, column);
free(demangled);
+ return frame;
} else {
return PerfUnwind::Frame(ip, isKernel, symname, elfFile, srcFile, line, column);
}