Index: src/ch/StringHelpers.cpp =================================================================== diff -u -N -re701ed2460c2558eeefab55a1f3ed1d2c89a56c0 -r4c272b19c74694c428c943011f279ec064fbd894 --- src/ch/StringHelpers.cpp (.../StringHelpers.cpp) (revision e701ed2460c2558eeefab55a1f3ed1d2c89a56c0) +++ src/ch/StringHelpers.cpp (.../StringHelpers.cpp) (revision 4c272b19c74694c428c943011f279ec064fbd894) @@ -42,36 +42,36 @@ } #endif -LPTSTR GetSizeString(double dData, LPTSTR pszBuffer) +LPTSTR GetSizeString(double dData, LPTSTR pszBuffer, size_t stMaxBufferSize) { if (dData < 0.0) dData=0.0; if (dData < 1200.0) - _stprintf(pszBuffer, _T("%.2f %s"), dData, GetResManager()->LoadString(IDS_BYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), dData, GetResManager()->LoadString(IDS_BYTE_STRING)); else if (dData < 1228800.0) - _stprintf(pszBuffer, _T("%.2f %s"), static_cast(dData)/1024.0, GetResManager()->LoadString(IDS_KBYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), static_cast(dData)/1024.0, GetResManager()->LoadString(IDS_KBYTE_STRING)); else if (dData < 1258291200.0) - _stprintf(pszBuffer, _T("%.2f %s"), static_cast(dData)/1048576.0, GetResManager()->LoadString(IDS_MBYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), static_cast(dData)/1048576.0, GetResManager()->LoadString(IDS_MBYTE_STRING)); else - _stprintf(pszBuffer, _T("%.2f %s"), static_cast(dData)/1073741824.0, GetResManager()->LoadString(IDS_GBYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), static_cast(dData)/1073741824.0, GetResManager()->LoadString(IDS_GBYTE_STRING)); return pszBuffer; } -LPTSTR GetSizeString(__int64 llData, LPTSTR pszBuffer, bool bStrict) +LPTSTR GetSizeString(__int64 llData, LPTSTR pszBuffer, size_t stMaxBufferSize, bool bStrict) { if (llData < 0) llData=0; if (llData >= 1258291200 && (!bStrict || (llData % 1073741824) == 0)) - _stprintf(pszBuffer, _T("%.2f %s"), (double)(llData/1073741824.0), GetResManager()->LoadString(IDS_GBYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), (double)(llData/1073741824.0), GetResManager()->LoadString(IDS_GBYTE_STRING)); else if (llData >= 1228800 && (!bStrict || (llData % 1048576) == 0)) - _stprintf(pszBuffer, _T("%.2f %s"), (double)(llData/1048576.0), GetResManager()->LoadString(IDS_MBYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), (double)(llData/1048576.0), GetResManager()->LoadString(IDS_MBYTE_STRING)); else if (llData >= 1200 && (!bStrict || (llData % 1024) == 0)) - _stprintf(pszBuffer, _T("%.2f %s"), (double)(llData/1024.0), GetResManager()->LoadString(IDS_KBYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%.2f %s"), (double)(llData/1024.0), GetResManager()->LoadString(IDS_KBYTE_STRING)); else - _stprintf(pszBuffer, _T("%I64u %s"), llData, GetResManager()->LoadString(IDS_BYTE_STRING)); + _sntprintf(pszBuffer, stMaxBufferSize, _T("%I64u %s"), llData, GetResManager()->LoadString(IDS_BYTE_STRING)); return pszBuffer; }