Fix zero-padding for printf formats which include a precision or

width.

This is a vendor-supplied patch.

Requested by:	bde
Submitted by:	Aharon Robbins <arnold@skeeve.com>
This commit is contained in:
Sheldon Hearn 1999-12-22 14:59:58 +00:00
parent 73b83ffce6
commit 7513a7dcd4
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/vendor/awk/dist/; revision=55001

View file

@ -459,7 +459,13 @@ register NODE *carg;
break;
case '0':
zero_flag = TRUE;
/*
* Only turn on zero_flag if we haven't seen
* the field width or precision yet. Otherwise,
* screws up floating point formatting.
*/
if (cur == & fw)
zero_flag = TRUE;
if (lj)
goto retry;
/* FALL through */
@ -1998,7 +2004,7 @@ NODE *tree;
free_temp(tmp);
if (do_lint) {
if (uval < 0)
if (d < 0)
warning("compl(%lf): negative value will give strange results", d);
if (double_to_int(d) != d)
warning("compl(%lf): fractional value will be truncated", d);