Patchwork Use an array type (lwpid_t[]) for the array of lwp IDs.

login
register
mail settings
Submitter John Baldwin
Date Aug. 12, 2017, 8:06 p.m.
Message ID <20170812200616.94064-1-jhb@FreeBSD.org>
Download mbox | patch
Permalink /patch/22118/
State New
Headers show

Comments

John Baldwin - Aug. 12, 2017, 8:06 p.m.
While here, fix a mistake in the ChangeLog for an earlier commit.

gdb/ChangeLog:

	* fbsd-nat.c (fbsd_add_threads): Use array type for `lwps'.
---
 gdb/ChangeLog  | 6 +++++-
 gdb/fbsd-nat.c | 9 ++++-----
 2 files changed, 9 insertions(+), 6 deletions(-)

Patch

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index c588291427..ce44c3805f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@ 
+2017-08-12  John Baldwin  <jhb@FreeBSD.org>
+
+	* fbsd-nat.c (fbsd_add_threads): Use array type for `lwps'.
+
 2017-08-11  Pedro Alves  <palves@redhat.com>
 
 	* infrun.c (process_event_stop_test): Adjust
@@ -116,7 +120,7 @@ 
 	[!HAVE_KINFO_GETVMMAP] (fbsd_find_memory_regions): Use std::string
 	for `mapfilename'.
 	(fbsd_xfer_partial): Use gdb::byte_vector.
-	(fbsd_add_threads): Likewise.
+	(fbsd_add_threads): Use gdb::unique_xmalloc_ptr.
 
 2017-08-09  John Baldwin  <jhb@FreeBSD.org>
 
diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c
index c89343a24f..aeae011c07 100644
--- a/gdb/fbsd-nat.c
+++ b/gdb/fbsd-nat.c
@@ -632,7 +632,7 @@  fbsd_add_threads (pid_t pid)
   if (nlwps == -1)
     perror_with_name (("ptrace"));
 
-  gdb::unique_xmalloc_ptr<lwpid_t> lwps (XCNEWVEC (lwpid_t, nlwps));
+  gdb::unique_xmalloc_ptr<lwpid_t[]> lwps (XCNEWVEC (lwpid_t, nlwps));
 
   nlwps = ptrace (PT_GETLWPLIST, pid, (caddr_t) lwps.get (), nlwps);
   if (nlwps == -1)
@@ -640,8 +640,7 @@  fbsd_add_threads (pid_t pid)
 
   for (i = 0; i < nlwps; i++)
     {
-      lwpid_t lwp = lwps.get ()[i];
-      ptid_t ptid = ptid_build (pid, lwp, 0);
+      ptid_t ptid = ptid_build (pid, lwps[i], 0);
 
       if (!in_thread_list (ptid))
 	{
@@ -650,7 +649,7 @@  fbsd_add_threads (pid_t pid)
 
 	  /* Don't add exited threads.  Note that this is only called
 	     when attaching to a multi-threaded process.  */
-	  if (ptrace (PT_LWPINFO, lwp, (caddr_t) &pl, sizeof pl) == -1)
+	  if (ptrace (PT_LWPINFO, lwps[i], (caddr_t) &pl, sizeof pl) == -1)
 	    perror_with_name (("ptrace"));
 	  if (pl.pl_flags & PL_FLAG_EXITED)
 	    continue;
@@ -658,7 +657,7 @@  fbsd_add_threads (pid_t pid)
 	  if (debug_fbsd_lwp)
 	    fprintf_unfiltered (gdb_stdlog,
 				"FLWP: adding thread for LWP %u\n",
-				lwp);
+				lwps[i]);
 	  add_thread (ptid);
 	}
     }