Lines 542-547
Link Here
|
542 |
apr_read_type_e eblock = APR_NONBLOCK_READ; |
542 |
apr_read_type_e eblock = APR_NONBLOCK_READ; |
543 |
apr_pool_t *input_pool = b->p; |
543 |
apr_pool_t *input_pool = b->p; |
544 |
|
544 |
|
|
|
545 |
/* Fail quickly if the connection has already been aborted. */ |
546 |
if (c->aborted) { |
547 |
apr_brigade_cleanup(b); |
548 |
return APR_ECONNABORTED; |
549 |
} |
550 |
|
545 |
if (ctx == NULL) { |
551 |
if (ctx == NULL) { |
546 |
ctx = apr_pcalloc(c->pool, sizeof(*ctx)); |
552 |
ctx = apr_pcalloc(c->pool, sizeof(*ctx)); |
547 |
net->out_ctx = ctx; |
553 |
net->out_ctx = ctx; |
Lines 909-920
Link Here
|
909 |
/* No need to check for SUCCESS, we did that above. */ |
915 |
/* No need to check for SUCCESS, we did that above. */ |
910 |
if (!APR_STATUS_IS_EAGAIN(rv)) { |
916 |
if (!APR_STATUS_IS_EAGAIN(rv)) { |
911 |
c->aborted = 1; |
917 |
c->aborted = 1; |
|
|
918 |
return APR_ECONNABORTED; |
912 |
} |
919 |
} |
913 |
|
920 |
|
914 |
/* The client has aborted, but the request was successful. We |
|
|
915 |
* will report success, and leave it to the access and error |
916 |
* logs to note that the connection was aborted. |
917 |
*/ |
918 |
return APR_SUCCESS; |
921 |
return APR_SUCCESS; |
919 |
} |
922 |
} |
920 |
|
923 |
|