manoj 00/02/18 16:58:46
Modified: src/lib/apr/file_io/unix readwrite.c Log: Bring the Unix writev code up-to-date, by updating the writev interface and returning 0 bytes written on error. Revision Changes Path 1.20 +6 -5 apache-2.0/src/lib/apr/file_io/unix/readwrite.c Index: readwrite.c =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/file_io/unix/readwrite.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- readwrite.c 2000/01/06 14:43:10 1.19 +++ readwrite.c 2000/02/19 00:58:46 1.20 @@ -213,7 +213,7 @@ */ #ifdef HAVE_WRITEV -ap_status_t ap_make_iov(struct iovec_t **new, struct iovec *iova, ap_context_t *cntxt) +ap_status_t ap_make_iov(struct iovec_t **new, const struct iovec *iova, ap_context_t *cntxt) { (*new) = ap_palloc(cntxt, sizeof(struct iovec_t)); if ((*new) == NULL) { @@ -224,15 +224,16 @@ return APR_SUCCESS; } -ap_status_t ap_writev(struct file_t *thefile, const struct iovec_t *vec, ap_ssize_t *iocnt) +ap_status_t ap_writev(struct file_t *thefile, const ap_iovec_t *vec, + ap_size_t nvec, ap_ssize_t *nbytes) { int bytes; - if ((bytes = writev(thefile->filedes, vec->theiov, *iocnt)) < 0) { - *iocnt = bytes; + if ((bytes = writev(thefile->filedes, vec->theiov, nvec)) < 0) { + *nbytes = 0; return errno; } else { - *iocnt = bytes; + *nbytes = bytes; return APR_SUCCESS; } }