Move the job control entries of a dying team's children to the kernel

team as well. Otherwise the children would later try to remove them from
a list they weren't in.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22429 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2007-10-03 22:20:30 +00:00
parent 76ab7bdcf8
commit d45ce8b1dc
+10 -1
View File
@@ -402,6 +402,15 @@ reparent_children(struct team *team)
remove_team_from_parent(team, child);
insert_team_into_parent(sKernelTeam, child);
}
// move job control entries too
sKernelTeam->stopped_children->entries.MoveFrom(
&team->stopped_children->entries);
sKernelTeam->continued_children->entries.MoveFrom(
&team->continued_children->entries);
// Note, we don't move the dead children entries. Those will be deleted
// when the team structure is deleted.
}
@@ -2050,7 +2059,7 @@ team_get_address_space(team_id id, vm_address_space **_addressSpace)
/*! Sets the team's job control state.
Interrupts must be disabled and the team lock being held.
Interrupts must be disabled and the team lock be held.
\a threadsLocked indicates whether the thread lock is being held, too.
*/
void