[COMMITTED] libio: Update internal fmemopen position after write (BZ #20005)

Andreas Schwab schwab@linux-m68k.org
Tue Apr 26 21:07:00 GMT 2016


Adhemerval Zanella <adhemerval.zanella@linaro.org> writes:

> diff --git a/libio/fmemopen.c b/libio/fmemopen.c
> index 23b5c5f..9264b72 100644
> --- a/libio/fmemopen.c
> +++ b/libio/fmemopen.c
> @@ -86,10 +86,10 @@ fmemopen_write (void *cookie, const char *b, size_t s)
>  
>    memcpy (&(c->buffer[pos]), b, s);
>  
> -  pos += s;
> -  if ((size_t) pos > c->maxpos)
> +  c->pos += s;
> +  if ((size_t) c->pos > c->maxpos)
>      {
> -      c->maxpos = pos;
> +      c->maxpos = c->pos;

What happens if pos != c->pos in an append stream?

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



More information about the Libc-alpha mailing list