Makes sense, thanks, fixed in r1687087.
Regards,
Yann.
On Tue, Jun 23, 2015 at 5:20 PM, Mike Rumph wrote:
> Hello Yann,
>
> This is just a matter of style, but isn't it more typical to have pool as
> the first parameter of a function?
> Even in mod_session_dbd.c, this is seen in dbd_clean(),
> session_dbd_monitor(), create_session_dbd_dir_config() and
> merge_session_dbd_dir_config().
>
> Thanks,
>
> Mike
>
> On 6/23/2015 3:54 AM, yla...@apache.org wrote:
>>
>> Author: ylavic
>> Date: Tue Jun 23 10:54:15 2015
>> New Revision: 1687021
>>
>> URL: http://svn.apache.org/r1687021
>> Log:
>> mod_session_dbd: follow up to r1686122.
>> DBD entries should also have request lifetime.
>> Proposed by: Jacob Champion
>> Reviewed by: ylavic
>>
>> Modified:
>> httpd/httpd/trunk/modules/session/mod_session_dbd.c
>>
>> Modified: httpd/httpd/trunk/modules/session/mod_session_dbd.c
>> URL:
>> http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/session/mod_session_dbd.c?rev=1687021&r1=1687020&r2=1687021&view=diff
>>
>> ==
>> --- httpd/httpd/trunk/modules/session/mod_session_dbd.c (original)
>> +++ httpd/httpd/trunk/modules/session/mod_session_dbd.c Tue Jun 23
>> 10:54:15 2015
>> @@ -94,8 +94,11 @@ static apr_status_t dbd_init(request_rec
>> /**
>>* Load the session by the key specified.
>> + *
>> + * The session value is allocated using the passed apr_pool_t.
>>*/
>> -static apr_status_t dbd_load(request_rec * r, const char *key, const char
>> **val)
>> +static apr_status_t dbd_load(request_rec * r, apr_pool_t *pool,
>> +const char *key,
>> const char **val)
>> {
>> apr_status_t rv;
>> @@ -138,7 +141,7 @@ static apr_status_t dbd_load(request_rec
>> return APR_EGENERAL;
>> }
>> if (*val == NULL) {
>> -*val = apr_pstrdup(r->pool,
>> +*val = apr_pstrdup(pool,
>> apr_dbd_get_entry(dbd->driver, row, 0));
>> }
>> /* we can't break out here or row won't get cleaned up */
>> @@ -204,7 +207,7 @@ static apr_status_t session_dbd_load(req
>> /* load an RFC2109 or RFC2965 compliant cookie */
>> ap_cookie_read(r, name, &key, conf->remove);
>> if (key) {
>> -ret = dbd_load(r, key, &val);
>> +ret = dbd_load(r, m->pool, key, &val);
>> if (ret != APR_SUCCESS) {
>> return ret;
>> }
>> @@ -215,7 +218,7 @@ static apr_status_t session_dbd_load(req
>> /* load named session */
>> else if (conf->peruser) {
>> if (r->user) {
>> -ret = dbd_load(r, r->user, &val);
>> +ret = dbd_load(r, m->pool, r->user, &val);
>> if (ret != APR_SUCCESS) {
>> return ret;
>> }
>>
>>
>>
>