Dear all, Regarding to the prior posts on the buggy behaviour of setting user groups, I have located the source of the problem
In the file "licq_user.h", line 520 // Group functions unsigned long GetGroups(GroupType g) { return(m_nGroups[g]); } void SetGroups(GroupType g, unsigned long s) { m_nGroups[g] = s; SaveLicqInfo\ (); } bool GetInGroup(GroupType, unsigned short); void SetInGroup(GroupType, unsigned short, bool); void AddToGroup(GroupType, unsigned short); void RemoveFromGroup(GroupType, unsigned short); As we could see, the group number are in unsigned short, which will therefore limited to the maximum group of 32 (or X mod 32, because of overflow). I also found that the implementation of the following functions are in "users.cpp". Since the effect of changing the declaration of the group functions in "licq_user.h" will propagate throughout the whole LICQ source, therefore, I have no idea how to solve this problem unless we CHANGE EVERTHING. Yours scinerely, Kong Shing Hon ------------------------------------------------------- This SF. Net email is sponsored by: GoToMyPC GoToMyPC is the fast, easy and secure way to access your computer from any Web browser or wireless device. Click here to Try it Free! https://www.gotomypc.com/tr/OSDN/AW/Q4_2003/t/g22lp?Target=mm/g22lp.tmpl _______________________________________________ Licq-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/licq-devel