Fix hrev43405 by moving the reference above the autolocker.

The change in hrev43405 wasn't correct, as it put the reference
object definition after the one of the corresponding locker, causing
the reference to be released before the unlock would happen.

Finally fixes #8187. Thanks Ingo for pointing that out.
This commit is contained in:
Michael Lotz
2011-12-10 21:35:40 +01:00
parent bcc4a523b6
commit e339322a88
+1 -1
View File
@@ -4028,6 +4028,7 @@ _user_setsid(void)
// lock the team's current process group, parent, and the team itself
team->LockTeamParentAndProcessGroup();
BReference<ProcessGroup> oldGroupReference(team->group);
AutoLocker<ProcessGroup> oldGroupLocker(team->group, true);
TeamLocker parentLocker(team->parent, true);
TeamLocker teamLocker(team, true);
@@ -4037,7 +4038,6 @@ _user_setsid(void)
return B_NOT_ALLOWED;
// remove the team from the old and add it to the new process group
BReference<ProcessGroup> oldGroupReference(team->group);
remove_team_from_group(team);
group->Publish(session);
insert_team_into_group(group, team);