[Lldb-commits] [PATCH] D32271: Patch to Attach pid successfully from different dir

Ed Maste via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Sun Apr 23 17:43:26 PDT 2017


emaste updated this revision to Diff 96334.
emaste added a comment.

Slightly simpler approach after early returns added in https://reviews.llvm.org/rL301100


https://reviews.llvm.org/D32271

Files:
  source/Host/freebsd/Host.cpp


Index: source/Host/freebsd/Host.cpp
===================================================================
--- source/Host/freebsd/Host.cpp
+++ source/Host/freebsd/Host.cpp
@@ -76,7 +76,14 @@
   if (!cstr)
     return false;
 
-  process_info.GetExecutableFile().SetFile(cstr, false);
+  // Get pathname for pid. If that fails fall back go argv[0].
+  char pathname[MAXPATHLEN];
+  size_t pathname_len = sizeof(pathname);
+  mib[2] = KERN_PROC_PATHNAME;
+  if (::sysctl(mib, 4, pathname, &len, NULL, 0) == 0)
+    process_info.GetExecutableFile().SetFile(pathname, false);
+  else
+    process_info.GetExecutableFile().SetFile(cstr, false);
 
   if (!(match_info_ptr == NULL ||
         NameMatches(process_info.GetExecutableFile().GetFilename().GetCString(),


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32271.96334.patch
Type: text/x-patch
Size: 757 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170424/62230057/attachment.bin>


More information about the lldb-commits mailing list