* remote.c (read_ptid): If we don't know about any inferior yet,
authorPedro Alves <palves@redhat.com>
Fri, 12 Dec 2008 00:12:03 +0000 (00:12 +0000)
committerPedro Alves <palves@redhat.com>
Fri, 12 Dec 2008 00:12:03 +0000 (00:12 +0000)
use the pid of magic_null_ptid.
(remote_start_remote): In the non-stop mode case, don't set
inferior_ptid to magic_null_ptid here.

gdb/ChangeLog
gdb/remote.c

index 68016e190c3cea7e964596aee34fe4bfea274fc6..88289006cfdac6ab3348686b8408fec599c4347b 100644 (file)
@@ -1,3 +1,10 @@
+2008-12-12  Pedro Alves  <pedro@codesourcery.com>
+
+       * remote.c (read_ptid): If we don't know about any inferior yet,
+       use the pid of magic_null_ptid.
+       (remote_start_remote): In the non-stop mode case, don't set
+       inferior_ptid to magic_null_ptid here.
+
 2008-12-11  Daniel Jacobowitz  <dan@codesourcery.com>
            Pedro Alves  <pedro@codesourcery.com>
 
index f1fb8752205b7dcb5941602025135ac5cf0e4f55..9af9efea1870cd5ebb2ccc63998b23b8d38f9129 100644 (file)
@@ -1527,8 +1527,13 @@ read_ptid (char *buf, char **obuf)
   pp = unpack_varlen_hex (p, &tid);
 
   /* Since the stub is not sending a process id, then default to
-     what's in inferior_ptid.  */
-  pid = ptid_get_pid (inferior_ptid);
+     what's in inferior_ptid, unless it's null at this point.  If so,
+     then since there's no way to know the pid of the reported
+     threads, use the magic number.  */
+  if (ptid_equal (inferior_ptid, null_ptid))
+    pid = ptid_get_pid (magic_null_ptid);
+  else
+    pid = ptid_get_pid (inferior_ptid);
 
   if (obuf)
     *obuf = pp;
@@ -2576,13 +2581,6 @@ remote_start_remote (struct ui_out *uiout, void *opaque)
         controlling.  We default to adding them in the running state.
         The '?' query below will then tell us about which threads are
         stopped.  */
-
-      /* If we're not using the multi-process extensions, there's no
-        way to know the pid of the reported threads; use the magic
-        number.  */
-      if (!remote_multi_process_p (rs))
-       inferior_ptid = magic_null_ptid;
-
       remote_threads_info ();
     }
   else if (rs->non_stop_aware)