summaryrefslogtreecommitdiffstats
path: root/lib/Plugins/CCpp.cpp
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2009-10-16 14:37:50 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2009-10-16 14:37:50 +0200
commit87eef1ad558b1d5b61e81ef21c03b754b1524513 (patch)
treefa29cdb77d2790178f20aaad38fbd9a8af641026 /lib/Plugins/CCpp.cpp
parentee55e34836dbfbb0379ed3a2715648731d50a666 (diff)
downloadabrt-87eef1ad558b1d5b61e81ef21c03b754b1524513.tar.gz
abrt-87eef1ad558b1d5b61e81ef21c03b754b1524513.tar.xz
abrt-87eef1ad558b1d5b61e81ef21c03b754b1524513.zip
lib/Plugins/CCpp.cpp: fix a bug with detecting missing debuginfos
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'lib/Plugins/CCpp.cpp')
-rw-r--r--lib/Plugins/CCpp.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/Plugins/CCpp.cpp b/lib/Plugins/CCpp.cpp
index c6d3b55..0718323 100644
--- a/lib/Plugins/CCpp.cpp
+++ b/lib/Plugins/CCpp.cpp
@@ -376,9 +376,10 @@ static void InstallDebugInfos(const std::string& pDebugDumpDir, std::string& bui
log("Getting module names, file names, build IDs from core file");
std::string unstrip_list = run_unstrip_n(pDebugDumpDir);
- log("Builting list of missing debuginfos");
+ log("Building list of missing debuginfos");
// lines look like this:
// 0x400000+0x209000 23c77451cf6adff77fc1f5ee2a01d75de6511dda@0x40024c - - [exe]
+ // or
// 0x400000+0x209000 ab3c8286aac6c043fd1bb1cc2a0b88ec29517d3e@0x40024c /bin/sleep /usr/lib/debug/bin/sleep.debug [exe]
// 0x7fff313ff000+0x1000 389c7475e3d5401c55953a425a2042ef62c4c7df@0x7fff313ff2f8 . - linux-vdso.so.1
vector_string_t missing;
@@ -390,6 +391,7 @@ static void InstallDebugInfos(const std::string& pDebugDumpDir, std::string& bui
c = *end;
*end = '\0';
char* word2 = strchr(p, ' ');
+ p = end + 1;
if (!word2)
continue;
word2++;
@@ -420,8 +422,6 @@ static void InstallDebugInfos(const std::string& pDebugDumpDir, std::string& bui
log("build_id:%s exists:%d", word2, (int)file_exists);
if (!file_exists)
missing.push_back(word2);
-
- p = end + 1;
} while (c);
free(dup);