Forráskód Böngészése

LibCoredump: Accept dynamic libraries with versioned names

Our Clang toolchain uses versioned names for its shared libraries,
meaning that our applications link against `libc++.so.1.0`, not simply
`libc++.so`. Without this change, the LLVM runtime libraries are
excluded from backtraces, which makes debugging toolchain issues harder.
Daniel Bertalan 3 éve
szülő
commit
1b63c8f3b0
1 módosított fájl, 1 hozzáadás és 1 törlés
  1. 1 1
      Userland/Libraries/LibCoredump/Backtrace.cpp

+ 1 - 1
Userland/Libraries/LibCoredump/Backtrace.cpp

@@ -20,7 +20,7 @@ namespace Coredump {
 ELFObjectInfo const* Backtrace::object_info_for_region(ELF::Core::MemoryRegionInfo const& region)
 {
     auto path = region.object_name();
-    if (!path.starts_with('/') && path.ends_with(".so"sv))
+    if (!path.starts_with('/') && (path.ends_with(".so"sv) || path.contains(".so."sv)))
         path = LexicalPath::join("/usr/lib", path).string();
 
     auto maybe_ptr = m_debug_info_cache.get(path);