transfer.c (formatted_transfer_scalar): Set max_pos to the greater of the current max_pos or the newly calculated position.

2008-01-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* io/transfer.c (formatted_transfer_scalar): Set max_pos to the greater
	of the current max_pos or the newly calculated position.

From-SVN: r131640
This commit is contained in:
Jerry DeLisle 2008-01-18 22:19:15 +00:00
parent 810143349d
commit 6c540522ba
2 changed files with 10 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2008-01-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* io/transfer.c (formatted_transfer_scalar): Set max_pos to the greater
of the current max_pos or the newly calculated position.
2008-01-18 Tobias Burnus <burnus@net-b.de>
* io/write.c (write_real): Increase default precision

View file

@ -948,9 +948,12 @@ formatted_transfer_scalar (st_parameter_dt *dtp, bt type, void *p, int len,
{
if (dtp->u.p.skips > 0)
{
int tmp;
write_x (dtp, dtp->u.p.skips, dtp->u.p.pending_spaces);
dtp->u.p.max_pos = (int)(dtp->u.p.current_unit->recl
- dtp->u.p.current_unit->bytes_left);
tmp = (int)(dtp->u.p.current_unit->recl
- dtp->u.p.current_unit->bytes_left);
dtp->u.p.max_pos =
dtp->u.p.max_pos > tmp ? dtp->u.p.max_pos : tmp;
}
if (dtp->u.p.skips < 0)
{