This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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



On 26/04/2016 18:07, Andreas Schwab wrote:
> 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.
> 

I am trying to come up with a scenario where it will lead to failure.
Do you have some in mind?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]