Refactor start_inferior

This patch is to refactor function start_inferior that signal_pid
is return in one place.

gdb/gdbserver:

2015-07-24  Yao Qi  <yao.qi@linaro.org>

	* server.c (start_inferior): Code refactor.
This commit is contained in:
Yao Qi 2015-07-24 14:40:34 +01:00
parent 11e6c98f1b
commit eb97750bce
2 changed files with 15 additions and 12 deletions

View file

@ -1,3 +1,7 @@
2015-07-24 Yao Qi <yao.qi@linaro.org>
* server.c (start_inferior): Code refactor.
2015-07-24 Yao Qi <yao.qi@linaro.org>
* server.c (process_serial_event): Set general_thread.

View file

@ -257,22 +257,21 @@ start_inferior (char **argv)
last_ptid = mywait (pid_to_ptid (signal_pid), &last_status, 0, 0);
if (last_status.kind != TARGET_WAITKIND_STOPPED)
return signal_pid;
do
if (last_status.kind == TARGET_WAITKIND_STOPPED)
{
(*the_target->resume) (&resume_info, 1);
do
{
(*the_target->resume) (&resume_info, 1);
last_ptid = mywait (pid_to_ptid (signal_pid), &last_status, 0, 0);
if (last_status.kind != TARGET_WAITKIND_STOPPED)
return signal_pid;
last_ptid = mywait (pid_to_ptid (signal_pid), &last_status, 0, 0);
if (last_status.kind != TARGET_WAITKIND_STOPPED)
break;
current_thread->last_resume_kind = resume_stop;
current_thread->last_status = last_status;
current_thread->last_resume_kind = resume_stop;
current_thread->last_status = last_status;
}
while (last_status.value.sig != GDB_SIGNAL_TRAP);
}
while (last_status.value.sig != GDB_SIGNAL_TRAP);
return signal_pid;
}