From 959b89f9ed7679ac47fa4a93d9a55e32e251a1bb Mon Sep 17 00:00:00 2001 From: lotodore Date: Tue, 16 Oct 2007 20:48:25 +0000 Subject: [PATCH] Do not save avatar files with unknown extensions. --- src/core/common/avatarmanager.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/core/common/avatarmanager.cpp b/src/core/common/avatarmanager.cpp index 962ee94e..a923f630 100644 --- a/src/core/common/avatarmanager.cpp +++ b/src/core/common/avatarmanager.cpp @@ -283,17 +283,22 @@ AvatarManager::StoreAvatarInCache(const MD5Buf &md5buf, AvatarFileType avatarFil case AVATAR_FILE_TYPE_GIF: ext = ".gif"; break; + case AVATAR_FILE_TYPE_UNKNOWN: + break; } - path tmpPath(m_cacheDir); - tmpPath /= (md5buf.ToString() + ext); - string fileName(tmpPath.file_string()); - ofstream o(fileName.c_str(), ios_base::out | ios_base::binary); - o.write((const char *)data, size); + if (!ext.empty()) { - boost::mutex::scoped_lock lock(m_cachedAvatarsMutex); - m_cachedAvatars.insert(AvatarMap::value_type(md5buf, fileName)); + path tmpPath(m_cacheDir); + tmpPath /= (md5buf.ToString() + ext); + string fileName(tmpPath.file_string()); + ofstream o(fileName.c_str(), ios_base::out | ios_base::binary); + o.write((const char *)data, size); + { + boost::mutex::scoped_lock lock(m_cachedAvatarsMutex); + m_cachedAvatars.insert(AvatarMap::value_type(md5buf, fileName)); + } + retVal = true; } - retVal = true; } catch (...) { }