Merge branch 'jk/decimal-width-for-uintmax'

We didn't format an integer that wouldn't fit in "int" but in
"uintmax_t" correctly.

* jk/decimal-width-for-uintmax:
  decimal_width: avoid integer overflow
This commit is contained in:
Junio C Hamano 2015-02-18 11:45:02 -08:00
Родитель de15bdb058 d306f3d351
Коммит ca00db08da
2 изменённых файлов: 5 добавлений и 5 удалений

Просмотреть файл

@ -1498,7 +1498,7 @@ extern const char *pager_program;
extern int pager_in_use(void);
extern int pager_use_color;
extern int term_columns(void);
extern int decimal_width(int);
extern int decimal_width(uintmax_t);
extern int check_pager_config(const char *cmd);
extern const char *editor_program;

Просмотреть файл

@ -133,12 +133,12 @@ int term_columns(void)
/*
* How many columns do we need to show this number in decimal?
*/
int decimal_width(int number)
int decimal_width(uintmax_t number)
{
int i, width;
int width;
for (width = 1, i = 10; i <= number; width++)
i *= 10;
for (width = 1; number >= 10; width++)
number /= 10;
return width;
}