Server now requests unknown avatar files from client and stores them in the cache dir. Error handling is still missing. Clients not yet request avatar files from the server, this is the next step.
AvatarManager is now thread safe. Default and cached avatars are handled in different lists to prevent deleting the default avatars when clearing the cache.
This commit is contained in:
@@ -1359,7 +1359,7 @@ NetPacketAvatarHeader::GetData(NetPacketAvatarHeader::Data &outData) const
|
||||
|
||||
outData.requestId = ntohl(tmpData->requestId);
|
||||
outData.avatarFileSize = ntohl(tmpData->avatarFileSize);
|
||||
outData.avatarFileType = static_cast<AvatarFileType>(ntohl(tmpData->avatarFileType));
|
||||
outData.avatarFileType = static_cast<AvatarFileType>(ntohs(tmpData->avatarFileType));
|
||||
}
|
||||
|
||||
const NetPacketAvatarHeader *
|
||||
@@ -1402,7 +1402,6 @@ NetPacketAvatarFile::Clone() const
|
||||
void
|
||||
NetPacketAvatarFile::SetData(const NetPacketAvatarFile::Data &inData)
|
||||
{
|
||||
NetPacketAvatarFileData *tmpData = (NetPacketAvatarFileData *)GetRawData();
|
||||
int fileDataSize = static_cast<int>(inData.fileData.size());
|
||||
|
||||
if (fileDataSize > MAX_FILE_DATA_SIZE)
|
||||
@@ -1412,6 +1411,8 @@ NetPacketAvatarFile::SetData(const NetPacketAvatarFile::Data &inData)
|
||||
(sizeof(NetPacketAvatarFileData)
|
||||
+ fileDataSize));
|
||||
|
||||
NetPacketAvatarFileData *tmpData = (NetPacketAvatarFileData *)GetRawData();
|
||||
|
||||
tmpData->requestId = htonl(inData.requestId);
|
||||
|
||||
char *avatarDataPtr = (char *)tmpData + sizeof(NetPacketAvatarFileData);
|
||||
|
||||
Reference in New Issue
Block a user