Thread ID in gdbserver

Atsushi Nemoto anemo@mba.ocn.ne.jp
Mon Jun 6 05:25:00 GMT 2005


Hi.  In Mar 2005, the type of cont_thread, stop_thread, etc. was
changed to "unsigned long" from "int".  But there are still some codes
which assume these variables are signed numbers.

For example, in gdbserver/server.c:

unsigned long cont_thread;
...
  if (n == 1 && resume_info[0].thread != -1)
    cont_thread = resume_info[0].thread;
  else
    cont_thread = -1;
...
  if (step || sig || cont_thread > 0)

This looks very suspicious.

For now I do not know whether this is real problem, but it is
potential bug and should be fixed, isn't it?

---
Atsushi Nemoto



More information about the Gdb mailing list