On Tue, Apr 6, 2010 at 11:35 AM, Philip M. Gollucci <pgollu...@p6m7g8.com> wrote: >> Perhaps, but I'm still understanding the implications of the code >> changes I'm making. Here's one: >> >> Index: src/modules/perl/mod_perl.c >> =================================================================== >> --- src/modules/perl/mod_perl.c (revision 930926) >> +++ src/modules/perl/mod_perl.c (working copy) >> @@ -53,7 +53,7 @@ >> } >> >> #ifndef USE_ITHREADS >> -static apr_status_t modperl_shutdown(void *data) >> +static apr_status_t modperl_shutdown(pTHX_ void *data) > > Thats definitely a correct change.
Here's the rest of it [1], but I'm highly skeptical on some of these changes. Is pTHX_ passed as the first argument in all cases, or the last? I still get some errors with this [2]. [1] Index: src/modules/perl/mod_perl.c =================================================================== --- src/modules/perl/mod_perl.c (revision 930926) +++ src/modules/perl/mod_perl.c (working copy) @@ -53,7 +53,7 @@ } #ifndef USE_ITHREADS -static apr_status_t modperl_shutdown(void *data) +static apr_status_t modperl_shutdown(pTHX_ void *data) { modperl_cleanup_data_t *cdata = (modperl_cleanup_data_t *)data; PerlInterpreter *perl = (PerlInterpreter *)cdata->data; @@ -669,7 +669,7 @@ } static int modperl_hook_post_config_last(apr_pool_t *pconf, apr_pool_t *plog, - apr_pool_t *ptemp, server_rec *s) + apr_pool_t *ptemp, server_rec *s,pTHX_ void *data ) { /* in the threaded environment, no server_rec/process_rec * modifications should be done beyond this point */ @@ -784,7 +784,7 @@ #endif /* USE_ITHREADS */ -static apr_status_t modperl_child_exit(void *data) +static apr_status_t modperl_child_exit(pTHX_ void *data) { char *level = NULL; server_rec *s = (server_rec *)data; @@ -1006,7 +1006,7 @@ return retval; } -int modperl_response_handler(request_rec *r) +int modperl_response_handler(request_rec *r, pTHX_ void *data) { MP_dDCFG; #ifdef USE_ITHREADS @@ -1053,7 +1053,7 @@ return retval; } -int modperl_response_handler_cgi(request_rec *r) +int modperl_response_handler_cgi(request_rec *r, pTHX_ void *data) { MP_dDCFG; GV *h_stdin, *h_stdout; [2] /usr/lib/gcc/i686-apple-darwin10/4.2.1/include/stdbool.h:36:1: warning: this is the location of the previous definition mod_perl.c: In function 'modperl_startup': mod_perl.c:338: warning: passing argument 3 of 'apr_pool_cleanup_register' from incompatible pointer type mod_perl.c: In function 'modperl_hook_child_init': mod_perl.c:828: warning: passing argument 3 of 'apr_pool_cleanup_register' from incompatible pointer type mod_perl.c: In function 'modperl_register_hooks': mod_perl.c:852: warning: passing argument 1 of 'ap_hook_post_config' from incompatible pointer type mod_perl.c: At top level: mod_perl.c:1010: error: conflicting types for 'modperl_response_handler' mod_perl.h:138: error: previous declaration of 'modperl_response_handler' was here mod_perl.c:1057: error: conflicting types for 'modperl_response_handler_cgi' mod_perl.h:139: error: previous declaration of 'modperl_response_handler_cgi' was here make[1]: *** [mod_perl.lo] Error 1 make: *** [modperl_lib] Error 2 --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@perl.apache.org For additional commands, e-mail: dev-h...@perl.apache.org