80ad801e90
$ ./gdbserver :1234 blah Process blah created; pid = 16471 Cannot exec blah: No such file or directory. Child exited with status 127 Killing process(es): 16471 ../../../../src/binutils-gdb/gdb/gdbserver/linux-low.c:920: A problem internal to GDBserver has been detected. kill_wait_lwp: Assertion `res > 0' failed. GDBserver shouldn't even be trying to kill that process. GDBserver kills or detaches from all processes on exit, and due to a missing mourn_inferior call, GDBserver tries to kill the process that it had already seen exit. Tested on x86_64 Fedora 20. New test included. I emulated what Windows outputs by hacking an error call in linux_create_inferior. gdb/gdbserver/ChangeLog: 2015-05-06 Pedro Alves <palves@redhat.com> PR server/18081 * server.c (start_inferior): If the process exits, mourn it. gdb/testsuite/ChangeLog: 2015-05-06 Pedro Alves <palves@redhat.com> PR server/18081 * gdb.server/non-existing-program.exp: New file. |
||
---|---|---|
.. | ||
ext-attach.c | ||
ext-attach.exp | ||
ext-run.exp | ||
file-transfer.exp | ||
Makefile.in | ||
no-thread-db.c | ||
no-thread-db.exp | ||
non-existing-program.exp | ||
server-exec-info.exp | ||
server-kill.c | ||
server-kill.exp | ||
server-mon.exp | ||
server-run.exp | ||
server.c | ||
solib-list-lib.c | ||
solib-list-main.c | ||
solib-list.exp | ||
transfer.txt | ||
wrapper.c | ||
wrapper.exp |