in JetBrains.Profiler.Api/src/Impl/Linux/LinuxHelper.cs [17:31]
internal static string? DlIteratePhdrFindLibraryPath(string libraryName)
{
var tailLibraryName = '/' + libraryName;
string? resultPath = null;
LibCSo6.dl_iterate_phdr((ref dl_phdr_info info, nuint size, IntPtr data) =>
{
var path = Marshal.PtrToStringAnsi(info.dlpi_name);
if (path == null || !path.EndsWith(tailLibraryName))
return 0;
resultPath = path;
return 1;
}, IntPtr.Zero);
return resultPath;
}