зеркало из https://github.com/microsoft/git.git
Merge branch 'jk/decimal-width-for-uintmax' into maint
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:
Коммит
3bef3c12d6
2
cache.h
2
cache.h
|
@ -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;
|
||||
|
|
8
pager.c
8
pager.c
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче