From: Jon K. <em...@us...> - 2002-09-20 01:15:57
|
Update of /cvsroot/licq/licq/src In directory usw-pr-cvs1:/tmp/cvs-serv2024/src Modified Files: user.cpp icqd-srv.cpp Log Message: hack around locking the user when modifying their alias. sanity check to not connect to server when renaming a user as well. Index: user.cpp =================================================================== RCS file: /cvsroot/licq/licq/src/user.cpp,v retrieving revision 1.53 retrieving revision 1.54 diff -u -d -r1.53 -r1.54 --- user.cpp 19 Sep 2002 17:52:16 -0000 1.53 +++ user.cpp 20 Sep 2002 01:15:54 -0000 1.54 @@ -1591,9 +1591,14 @@ // A write lock should be here, we need to unlock for this if (gLicqDaemon && _bUpdate) { - Unlock(); + unsigned short _nLockType = m_nLockType; + if (_nLockType == LOCK_W || _nLockType == LOCK_R) + Unlock(); + gLicqDaemon->icqRenameUser(m_nUin, szOldAlias); - Lock(LOCK_W); + + if (_nLockType == LOCK_W || _nLockType == LOCK_R) + Lock(_nLockType); } if (szOldAlias) Index: icqd-srv.cpp =================================================================== RCS file: /cvsroot/licq/licq/src/icqd-srv.cpp,v retrieving revision 1.64 retrieving revision 1.65 diff -u -d -r1.64 -r1.65 --- icqd-srv.cpp 20 Sep 2002 01:11:01 -0000 1.64 +++ icqd-srv.cpp 20 Sep 2002 01:15:55 -0000 1.65 @@ -218,7 +218,7 @@ //-----icqRenameUser------------------------------------------------------------ void CICQDaemon::icqRenameUser(unsigned long _nUin, const char *_szOldAlias) { - if (!UseServerContactList()) return; + if (!UseServerContactList() || m_nTCPSocketDesc == -1) return; ICQUser *u = gUserManager.FetchUser(_nUin, LOCK_R); if (u == NULL) return; |