return urg;
data->header_size += p - data->headerbuff;
+
+
+ /*
+ * end-of-headers.
+ *
+ * If we requested a "no body" and this isn't a "close"
+ * connection, this is a good time to get out and return
+ * home.
+ */
+ if(!conn->bits.close && data->bits.no_body)
+ return CURLE_OK;
+
break; /* exit header line loop */
}
is non-headers. */
if (str && !header && ((signed int)nread > 0)) {
- /*
- * If we requested a HTTP header, this might be a good time to get
- * out and return home.
- */
-
if(0 == bodywrites) {
/* These checks are only made the first time we are about to
write a piece of the body */
if(conn->bits.chunk) {
/*
- * Bless me father for I have sinned. Here come a chunked
+ * Bless me father for I have sinned. Here comes a chunked
* transfer flying and we need to decode this properly. While
* the name says read, this function both reads and writes away
* the data. The returned 'nread' holds the number of actual
/* we're done reading chunks! */
keepon &= ~KEEP_READ; /* read no more */
- /* There are now (~res) bytes at the end of the str buffer
+ /* There are now possibly bytes at the end of the str buffer
that weren't written to the client, but we don't care
about them right now. */
}