Fix it so that numbers containing inner zeros will be formatted correctly.

2001-02-18  Rusty Conover  <rconover@zootweb.com>

	* gal/util/e-util.c (e_format_number): Fix it so that numbers
	containing inner zeros will be formatted correctly.  For instance
	the number 5005 when formatted was coming out as 5,5.  It now
	comes out at 5,005.

svn path=/trunk/; revision=8272
This commit is contained in:
Rusty Conover
2001-02-18 23:31:27 +00:00
committed by Rusty Conover
parent 3d8953cbd9
commit cf479fb7dc

View File

@ -627,9 +627,11 @@ e_format_number (gint number)
int divider;
char *value;
char *value_iterator;
int initial_grouping;
locality = localeconv();
grouping = locality->grouping;
initial_grouping = *grouping;
while (number) {
char *group;
switch (*grouping) {
@ -638,7 +640,11 @@ e_format_number (gint number)
grouping++;
case 0:
divider = epow10(last_count);
group = g_strdup_printf("%d", number % divider);
if(!list && (number/divider) > 0) {
group = g_strdup_printf("%0*d", initial_grouping, number % divider);
} else {
group = g_strdup_printf("%d", number % divider);
}
number /= divider;
break;
case CHAR_MAX: