Rationale: if an module gets a resource that proves to be bad (e.g. a connection that's gone away), it shouldn't be returned to the pool to be given out again. We should invalidate it.
Created attachment 9906 [details] Patch that implments this Function
The patch doesn't compile as-is due to mismatch in prototypes between header file (2nd parm is void *) and implementation (2nd parm is apr_res_t *). It doesn't seem to be a trivial issue, either. destroy_resource() really does need apr_res_t *, but apr_res_t is a wrapper for the void * that the application deals with. Is there a later patch than what is in this PR?
committed to apr-util 1.0-dev