On Fri, 4 Apr 2003, Stas Bekman wrote:

> Hmm, I still think that my mips init move wasn't complete.
> Please try this patch first:
> 
> Index: src/modules/perl/mod_perl.c
> ===================================================================
> RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v
> retrieving revision 1.163
> diff -u -r1.163 mod_perl.c
> --- src/modules/perl/mod_perl.c       3 Apr 2003 06:23:52 -0000       1.163
> +++ src/modules/perl/mod_perl.c       4 Apr 2003 06:10:17 -0000
> @@ -200,6 +200,20 @@
>           if (MpSrvPARENT(scfg)) {
>               MpInterpBASE_On(scfg->mip->parent);
>           }
> +
> +        if (!scfg->mip) {
> +            /* since mips are created after merge_server_configs()
> +             * need to point to the base mip here if this vhost
> +             * doesn't have its own
> +             */
> +            server_rec *base_server = modperl_global_get_server_rec();
> +            modperl_config_srv_t *base_scfg =
> +                modperl_config_srv_get(base_server);
> +            MP_TRACE_i(MP_FUNC, "%s mip inherited from %s\n",
> +                       vhost, modperl_server_desc(base_server, p));
> +            scfg->mip = base_scfg->mip;
> +        }
> +
>       }
>       else {
>           /* base server */
> @@ -305,18 +319,6 @@
>               return HTTP_INTERNAL_SERVER_ERROR;
>           }
>       }
> -
> -#ifdef USE_ITHREADS
> -    if (!scfg->mip) {
> -        /* since mips are created after merge_server_configs()
> -         * need to point to the base mip here if this vhost
> -         * doesn't have its own
> -         */
> -        MP_TRACE_i(MP_FUNC, "%s mip inherited from %s\n",
> -                   vhost, modperl_server_desc(base_server, p));
> -        scfg->mip = base_scfg->mip;
> -    }
> -#endif  /* USE_ITHREADS */
> 
>       return OK;
>   }

Thanks ... I tried it (after adding the assignment
   const char *vhost = modperl_server_desc(s, p);
before the MP_TRACE_i call), but got the same problems
as before, with a free to a wrong pool, occurring
I think at about sv_setref_pv(sv, classname, ptr) within
modperl_ptr2obj() in src/modules/modperl_util.c.

-- 
best regards,
randy


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to