2008-10-21 Michael Snyder * remote.c (write_ptid): Emit leading zeros to preserve remote protocol behavior of remote_thread_alive. Index: remote.c =================================================================== RCS file: /cvs/src/src/gdb/remote.c,v retrieving revision 1.321 diff -u -p -r1.321 remote.c --- remote.c 17 Oct 2008 19:43:47 -0000 1.321 +++ remote.c 22 Oct 2008 01:00:16 -0000 @@ -1433,15 +1433,15 @@ write_ptid (char *buf, const char *endbu { pid = ptid_get_pid (ptid); if (pid < 0) - buf += xsnprintf (buf, endbuf - buf, "p-%x.", -pid); + buf += xsnprintf (buf, endbuf - buf, "p-%08x.", -pid); else - buf += xsnprintf (buf, endbuf - buf, "p%x.", pid); + buf += xsnprintf (buf, endbuf - buf, "p%08x.", pid); } tid = ptid_get_tid (ptid); if (tid < 0) - buf += xsnprintf (buf, endbuf - buf, "-%x", -tid); + buf += xsnprintf (buf, endbuf - buf, "-%x08", -tid); else - buf += xsnprintf (buf, endbuf - buf, "%x", tid); + buf += xsnprintf (buf, endbuf - buf, "%x08", tid); return buf; } @@ -2097,6 +2097,10 @@ remote_threads_info (void) { do { + /* Skip spaces. */ + while (*bufp == ' ') + bufp++; + new_thread = read_ptid (bufp, &bufp); if (!ptid_equal (new_thread, null_ptid) && (!in_thread_list (new_thread)