I don't think kill_thread() is actually supposed to wait for the thread

to be killed. Reverted ShutdownProcess.cpp to continue to use kill_team()
instead of sending a signal.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16780 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2006-03-14 01:54:49 +00:00
parent 2e37884ff0
commit 5d35aa2833
2 changed files with 3 additions and 10 deletions

View File

@ -1608,7 +1608,7 @@ ShutdownProcess::_QuitNonApps()
PRINT((" killing team %ld\n", teamInfo.team)); PRINT((" killing team %ld\n", teamInfo.team));
#ifdef __HAIKU__ #ifdef __HAIKU__
send_signal(teamInfo.team, SIGKILL); kill_team(teamInfo.team);
#else #else
// We don't want to do this when testing under R5, since it // We don't want to do this when testing under R5, since it
// would kill all teams besides our app server and registrar. // would kill all teams besides our app server and registrar.
@ -1676,7 +1676,7 @@ ShutdownProcess::_QuitBlockingApp(AppInfoList &list, team_id team,
// kill the app // kill the app
PRINT((" killing team %ld\n", team)); PRINT((" killing team %ld\n", team));
send_signal(team, SIGKILL); kill_team(team);
// remove the app (the roster will note eventually and send us // remove the app (the roster will note eventually and send us
// a notification, but we want to be sure) // a notification, but we want to be sure)

View File

@ -1498,14 +1498,7 @@ exit_thread(status_t returnValue)
status_t status_t
kill_thread(thread_id id) kill_thread(thread_id id)
{ {
status_t status = send_signal_etc(id, SIGKILLTHR, B_DO_NOT_RESCHEDULE); return send_signal(id, SIGKILLTHR);
if (status < B_OK)
return status;
if (id != thread_get_current_thread()->id)
wait_for_thread(id, NULL);
return status;
} }