Removed a couple stupid cursor-related bugs
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9403 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -157,15 +157,20 @@ void CursorManager::RemoveAppCursors(team_id team)
|
|||||||
{
|
{
|
||||||
Lock();
|
Lock();
|
||||||
|
|
||||||
ServerCursor *temp;
|
int32 i=0;
|
||||||
for(int32 i=0; i<fCursorList->CountItems();i++)
|
ServerCursor *temp=(ServerCursor*)fCursorList->ItemAt(i);
|
||||||
|
while(temp)
|
||||||
{
|
{
|
||||||
temp=(ServerCursor*)fCursorList->ItemAt(i);
|
|
||||||
if(temp && temp->OwningTeam()==team)
|
if(temp && temp->OwningTeam()==team)
|
||||||
{
|
{
|
||||||
fCursorList->RemoveItem(i);
|
fCursorList->RemoveItem(i);
|
||||||
delete temp;
|
delete temp;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
temp=(ServerCursor*)fCursorList->ItemAt(i);
|
||||||
}
|
}
|
||||||
Unlock();
|
Unlock();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -154,8 +154,10 @@ ServerApp::~ServerApp(void)
|
|||||||
delete fMsgSender;
|
delete fMsgSender;
|
||||||
fMsgSender=NULL;
|
fMsgSender=NULL;
|
||||||
|
|
||||||
if(fAppCursor)
|
// This shouldn't be necessary -- all cursors owned by the app
|
||||||
delete fAppCursor;
|
// should be cleaned up by RemoveAppCursors
|
||||||
|
// if(fAppCursor)
|
||||||
|
// delete fAppCursor;
|
||||||
|
|
||||||
cursormanager->RemoveAppCursors(fClientTeamID);
|
cursormanager->RemoveAppCursors(fClientTeamID);
|
||||||
delete_sem(fLockSem);
|
delete_sem(fLockSem);
|
||||||
|
|||||||
Reference in New Issue
Block a user