diff options
Diffstat (limited to 'lib/Plugins/CCpp.cpp')
| -rw-r--r-- | lib/Plugins/CCpp.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Plugins/CCpp.cpp b/lib/Plugins/CCpp.cpp index a2665ed..48f452a 100644 --- a/lib/Plugins/CCpp.cpp +++ b/lib/Plugins/CCpp.cpp @@ -357,6 +357,7 @@ static void InstallDebugInfos(const std::string& pDebugDumpDir) log("Builting list of missing debuginfos"); // lines look like this: + // 0x400000+0x209000 23c77451cf6adff77fc1f5ee2a01d75de6511dda@0x40024c - - [exe] // 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; @@ -374,8 +375,10 @@ static void InstallDebugInfos(const std::string& pDebugDumpDir) char* endsp = strchr(word2, ' '); if (!endsp) continue; + /* endsp points to 2nd space in the line now*/ + /* This filters out linux-vdso.so, among others */ - if (endsp[1] != '/') + if (strstr(endsp, "[exe]") == NULL && endsp[1] != '/') continue; *endsp = '\0'; char* at = strchrnul(word2, '@'); |
