This commit is contained in:
Birunthan Mohanathas
2012-08-04 21:27:21 +03:00
parent 78542ec2be
commit e2ce7d59a7
2 changed files with 49 additions and 73 deletions

View File

@ -627,22 +627,15 @@ double CMeasure::GetValueRange()
*/
const WCHAR* CMeasure::GetStringValue(AUTOSCALE autoScale, double scale, int decimals, bool percentual)
{
static WCHAR buffer[MAX_LINE_LENGTH];
static WCHAR buffer[128];
WCHAR format[32];
if (percentual)
{
double val = 100.0 * GetRelativeValue();
if (decimals == 0)
{
_itow_s((int)val, buffer, 10);
}
else
{
_snwprintf_s(format, _TRUNCATE, L"%%.%if", decimals);
_snwprintf_s(buffer, _TRUNCATE, format, val);
}
_snwprintf_s(format, _TRUNCATE, L"%%.%if", decimals);
_snwprintf_s(buffer, _TRUNCATE, format, val);
}
else if (autoScale != AUTOSCALE_OFF)
{
@ -652,12 +645,7 @@ const WCHAR* CMeasure::GetStringValue(AUTOSCALE autoScale, double scale, int dec
{
double val = GetValue() / scale;
if (decimals == 0)
{
val += (val >= 0) ? 0.5 : -0.5;
_snwprintf_s(buffer, _TRUNCATE, L"%lli", (LONGLONG)val);
}
else if (decimals == -1)
if (decimals == -1)
{
int len = _snwprintf_s(buffer, _TRUNCATE, L"%.5f", val);
RemoveTrailingZero(buffer, len);