https://bz.apache.org/bugzilla/show_bug.cgi?id=69264

--- Comment #8 from Guido Jäkel <g.jae...@dnb.de> ---
I've thought about Ruedigers suggestion to check if  apr_file_write_full() 
will report bytes written as commissioned.

I'm currently using apr-1.7.4. Staring at the goats, aeh code of 
apr_file_write_full() 
(https://github.com/apache/apr/blob/b4197909d26042ece777727cc6152deeea75a3ab/file_io/unix/fullrw.c#L42)
this uses a vanilla copy loop. I can't see any possibility either to return
successful; and then the calculated  bytes_written  MUST be the number of 
nbytes  instructed to transfer. Or to return unsuccessful with a different
value, which will be reported by the suggested patch.

But the end of the string is received and this CAN'T happen, if the loop exit
before reaching it's normal end. Therefore, it MUST have instructed to transfer
any slice before the end, including the start. In other words,  I don't see any
logic to skip over some leading parts of the string.

The copy loop uses  apr_file_write() 
(https://github.com/apache/apr/blob/b4197909d26042ece777727cc6152deeea75a3ab/file_io/unix/readwrite.c#L147)
to do thew work. "Loosing" something to transfer while reporting it to be done
MUST be happen here. Therefore, IMHO it must be a bug or thread race condition
inside this much more complex code.

What do you think about?

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscr...@httpd.apache.org
For additional commands, e-mail: bugs-h...@httpd.apache.org

Reply via email to