Skip to content

Commit efa676f

Browse files
committed
Utils: fix Q_pretifymem so it compiles with -Wformat-nonliteral
1 parent e0d3b84 commit efa676f

File tree

1 file changed

+6
-17
lines changed

1 file changed

+6
-17
lines changed

Utils.cpp

+6-17
Original file line numberDiff line numberDiff line change
@@ -571,34 +571,23 @@ char *Q_pretifymem( float value, int digitsafterdecimal )
571571
if( value > onemb )
572572
{
573573
value /= onemb;
574-
suffix = " Mb";
574+
suffix = "Mb";
575575
}
576576
else if( value > onekb )
577577
{
578578
value /= onekb;
579-
suffix = " Kb";
579+
suffix = "Kb";
580580
}
581581
else
582582
{
583-
suffix = " bytes";
583+
suffix = "bytes";
584584
}
585585

586-
// clamp to >= 0
587-
digitsafterdecimal = Q_max( digitsafterdecimal, 0 );
588-
589586
// if it's basically integral, don't do any decimals
590-
if( fabs( value - (int)value ) < 0.00001f )
591-
{
592-
snprintf( val, sizeof( val ), "%i%s", (int)value, suffix );
593-
}
587+
if( fabs( value - (int)value ) < 0.00001f || digitsafterdecimal <= 0 )
588+
snprintf( val, sizeof( val ), "%i %s", (int)round( value ), suffix );
594589
else
595-
{
596-
char fmt[32];
597-
598-
// otherwise, create a format string for the decimals
599-
snprintf( fmt, sizeof( fmt ), "%%.%if%s", digitsafterdecimal, suffix );
600-
snprintf( val, sizeof( val ), fmt, (double)value );
601-
}
590+
snprintf( val, sizeof( val ), "%.*f %s", digitsafterdecimal, (double)value, suffix );
602591

603592
// copy from in to out
604593
i = val;

0 commit comments

Comments
 (0)