summaryrefslogtreecommitdiff
path: root/protocols/Steam/src
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Steam/src')
-rw-r--r--protocols/Steam/src/steam_avatars.cpp12
-rw-r--r--protocols/Steam/src/steam_proto.cpp2
2 files changed, 6 insertions, 8 deletions
diff --git a/protocols/Steam/src/steam_avatars.cpp b/protocols/Steam/src/steam_avatars.cpp
index 9a72b6fec0..cee909ed30 100644
--- a/protocols/Steam/src/steam_avatars.cpp
+++ b/protocols/Steam/src/steam_avatars.cpp
@@ -2,17 +2,13 @@
wchar_t* CSteamProto::GetAvatarFilePath(MCONTACT hContact)
{
- wchar_t path[MAX_PATH];
- mir_snwprintf(path, L"%s\\%S", VARSW(L"%miranda_avatarcache%").get(), m_szModuleName);
- CreateDirectoryTreeW(path);
-
ptrA steamId(getStringA(hContact, "SteamID"));
- if (steamId != NULL)
- mir_snwprintf(path, MAX_PATH, L"%s\\%S.jpg", path, steamId.get());
- else
+ if (steamId == NULL)
return nullptr;
- return mir_wstrdup(path);
+ CMStringW wszPath(GetAvatarPath());
+ wszPath.AppendFormat(L"\\%S.jpg", steamId.get());
+ return wszPath.Detach();
}
bool CSteamProto::GetDbAvatarInfo(PROTO_AVATAR_INFORMATION &pai)
diff --git a/protocols/Steam/src/steam_proto.cpp b/protocols/Steam/src/steam_proto.cpp
index f185171edd..8a2959f84a 100644
--- a/protocols/Steam/src/steam_proto.cpp
+++ b/protocols/Steam/src/steam_proto.cpp
@@ -49,6 +49,8 @@ CSteamProto::CSteamProto(const char *protoName, const wchar_t *userName) :
SetAllContactStatuses(ID_STATUS_OFFLINE);
// avatar API
+ CreateDirectoryTreeW(GetAvatarPath());
+
CreateProtoService(PS_GETAVATARINFO, &CSteamProto::GetAvatarInfo);
CreateProtoService(PS_GETAVATARCAPS, &CSteamProto::GetAvatarCaps);
CreateProtoService(PS_GETMYAVATAR, &CSteamProto::GetMyAvatar);