Changeset 6364 for trunk/licq/src/user.cpp
- Timestamp:
- 07/01/08 03:07:09 (5 months ago)
- Files:
-
- 1 modified
-
trunk/licq/src/user.cpp (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/licq/src/user.cpp
r6363 r6364 510 510 CUserManager::~CUserManager() 511 511 { 512 UserList::iterator iter; 513 for (iter = m_vpcUsers.begin(); iter != m_vpcUsers.end(); ++iter) 514 { 515 delete *iter; 516 } 512 UserMap::iterator iter; 513 for (iter = myUsers.begin(); iter != myUsers.end(); ++iter) 514 delete iter->second; 517 515 518 516 GroupMap::iterator g_iter; … … 681 679 u->AddToContactList(); 682 680 myUsers[UserMapKey(szId, nPPID)] = u; 683 m_vpcUsers.push_back(u);684 681 } 685 682 UnlockUserList(); … … 715 712 // Store the user in the lookup map 716 713 myUsers[UserMapKey(_szId, _nPPID)] = pUser; 717 // Reorder the user to the correct place718 m_vpcUsers.push_back(pUser);719 714 720 715 UnlockUserList(); … … 728 723 u->RemoveFiles(); 729 724 LockUserList(LOCK_W); 730 UserList::iterator iter = m_vpcUsers.begin();731 while (iter != m_vpcUsers.end() && u != (*iter)) ++iter;732 if (iter == m_vpcUsers.end())733 gLog.Warn("%sInteral Error: CUserManager::RemoveUser():\n"734 "%sUser \"%s\" (%s) not found in vector.\n",735 L_WARNxSTR, L_BLANKxSTR, u->GetAlias(), u->IdString());736 else737 m_vpcUsers.erase(iter);738 DropUser(u);739 725 myUsers.erase(UserMapKey(_szId, _nPPID)); 740 726 UnlockUserList(); 727 DropUser(u); 741 728 delete u; 742 729 } … … 1440 1427 { 1441 1428 //LockUserList(LOCK_R); 1442 unsigned short n = m _vpcUsers.size();1429 unsigned short n = myUsers.size(); 1443 1430 //UnlockUserList(); 1444 1431 return n; … … 1472 1459 * Locks the entire user list for iterating through... 1473 1460 *-------------------------------------------------------------------------*/ 1474 User List *CUserManager::LockUserList(unsigned short _nLockType)1461 UserMap* CUserManager::LockUserList(unsigned short _nLockType) 1475 1462 { 1476 1463 switch (_nLockType) … … 1487 1474 } 1488 1475 m_nUserListLockType = _nLockType; 1489 return &m _vpcUsers;1476 return &myUsers; 1490 1477 } 1491 1478
