Now for every exported function we have pair of functions that accepts
pool_name and old one, which is just wrapper:

----

DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open_pool(apr_pool_t *pool, server_rec *s,
        const char *pool_name);
DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t *pool, server_rec *s);

APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open_pool, (apr_pool_t*,
server_rec*, const char*));
APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open, (apr_pool_t*, server_rec*));

----

DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t *pool, server_rec *s)
{
    return ap_dbd_open_pool(pool, s, DBD_DEFAULT_POOL_NAME);
}

In httpd.conf you can create named pool inside <DBDPool pool_name> or
without. In second case pool_name is DBD_DEFAULT_POOL_NAME.

Thus old functions and old configuration is preserved.

What so you think?

Patch is ready, but it needs some testing before posting.

Reply via email to