diff options
Diffstat (limited to 'plugins/Variables/src/parse_metacontacts.cpp')
-rw-r--r-- | plugins/Variables/src/parse_metacontacts.cpp | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/plugins/Variables/src/parse_metacontacts.cpp b/plugins/Variables/src/parse_metacontacts.cpp index dd552ecb9b..40fe04c36b 100644 --- a/plugins/Variables/src/parse_metacontacts.cpp +++ b/plugins/Variables/src/parse_metacontacts.cpp @@ -53,13 +53,14 @@ static TCHAR *parseGetParent(ARGUMENTSINFO *ai) if (szUniqueID == NULL)
{
szProto = PROTOID_HANDLE;
- szUniqueID = (TCHAR*)mir_alloc(32);
- _stprintf(szUniqueID, _T("%p"), hContact);
+ szUniqueID = (TCHAR *)mir_alloc(32);
+ mir_sntprintf(szUniqueID, 32, _T("%p"), hContact);
if (szProto == NULL || szUniqueID == NULL)
return NULL;
}
- TCHAR *res = (TCHAR*)mir_alloc((strlen(szProto) + _tcslen(szUniqueID) + 4)*sizeof(TCHAR));
+ int size = strlen(szProto) + _tcslen(szUniqueID) + 4;
+ TCHAR *res = (TCHAR *)mir_alloc(size * sizeof(TCHAR));
if (res == NULL) {
mir_free(szUniqueID);
return NULL;
@@ -67,7 +68,7 @@ static TCHAR *parseGetParent(ARGUMENTSINFO *ai) TCHAR *tszProto = mir_a2t(szProto);
if (tszProto != NULL && szUniqueID != NULL) {
- wsprintf(res, _T("<%s:%s>"), tszProto, szUniqueID);
+ mir_sntprintf(res, size, _T("<%s:%s>"), tszProto, szUniqueID);
mir_free(szUniqueID);
mir_free(tszProto);
}
@@ -108,13 +109,14 @@ static TCHAR *parseGetDefault(ARGUMENTSINFO *ai) if (szUniqueID == NULL) {
szProto = PROTOID_HANDLE;
- szUniqueID = (TCHAR*)mir_alloc(32);
- _stprintf(szUniqueID, _T("%p"), hContact);
+ szUniqueID = (TCHAR *)mir_alloc(32);
+ mir_sntprintf(szUniqueID, 32, _T("%p"), hContact);
if (szProto == NULL || szUniqueID == NULL)
return NULL;
}
- TCHAR* res = (TCHAR*)mir_alloc((strlen(szProto) + _tcslen(szUniqueID) + 4)*sizeof(TCHAR));
+ int size = strlen(szProto) + _tcslen(szUniqueID) + 4;
+ TCHAR *res = (TCHAR *)mir_alloc(size * sizeof(TCHAR));
if (res == NULL) {
mir_free(szUniqueID);
return NULL;
@@ -122,7 +124,7 @@ static TCHAR *parseGetDefault(ARGUMENTSINFO *ai) TCHAR *tszProto = mir_a2t(szProto);
if (tszProto != NULL && szUniqueID != NULL) {
- wsprintf(res, _T("<%s:%s>"), tszProto, szUniqueID);
+ mir_sntprintf(res, size, _T("<%s:%s>"), tszProto, szUniqueID);
mir_free(szUniqueID);
mir_free(tszProto);
}
@@ -163,13 +165,14 @@ static TCHAR *parseGetMostOnline(ARGUMENTSINFO *ai) if (szUniqueID == NULL) {
szProto = PROTOID_HANDLE;
- szUniqueID = (TCHAR*)mir_alloc(32);
- _stprintf(szUniqueID, _T("%p"), hContact);
+ szUniqueID = (TCHAR *)mir_alloc(32);
+ mir_sntprintf(szUniqueID, 32, _T("%p"), hContact);
if (szProto == NULL || szUniqueID == NULL)
return NULL;
}
- TCHAR *res = (TCHAR*)mir_alloc((strlen(szProto) + _tcslen(szUniqueID) + 4)*sizeof(TCHAR));
+ int size = strlen(szProto) + _tcslen(szUniqueID) + 4;
+ TCHAR *res = (TCHAR *)mir_alloc(size * sizeof(TCHAR));
if (res == NULL) {
mir_free(szUniqueID);
return NULL;
@@ -177,7 +180,7 @@ static TCHAR *parseGetMostOnline(ARGUMENTSINFO *ai) TCHAR *tszProto = mir_a2t(szProto);
if (tszProto != NULL && szUniqueID != NULL) {
- wsprintf(res, _T("<%s:%s>"), tszProto, szUniqueID);
+ mir_sntprintf(res, size, _T("<%s:%s>"), tszProto, szUniqueID);
mir_free(szUniqueID);
mir_free(tszProto);
}
|