Further to the splitting off of APR::* from mod_perl.so, the following diff moves a couple of functions from src/modules/perl/modperl_util.c to src/modules/perl/modperl_common_util.c, so that APR::OS and APR::URI would be usable outside of mod_perl.so: ========================================================= ? s.txt Index: modperl_common_util.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_common_util.c,v retrieving revision 1.1 diff -u -r1.1 modperl_common_util.c --- modperl_common_util.c 16 Jun 2004 03:55:47 -0000 1.1 +++ modperl_common_util.c 21 Jun 2004 05:00:55 -0000 @@ -20,6 +20,7 @@ * needed in order to keep the libraries used outside mod_perl * small */
+#include "mod_perl.h" #include "modperl_common_util.h" MP_INLINE SV *modperl_hash_tie(pTHX_ @@ -78,4 +79,19 @@ (void)hv_delete(gv_stashpv(pack, TRUE), GvNAME(gv), GvNAMELEN(gv), G_DISCARD); return rv; +} + +/* XXX: sv_setref_uv does not exist in 5.6.x */ +MP_INLINE SV *modperl_perl_sv_setref_uv(pTHX_ SV *rv, + const char *classname, UV uv) +{ + sv_setuv(newSVrv(rv, classname), uv); + return rv; +} + +MP_INLINE modperl_uri_t *modperl_uri_new(apr_pool_t *p) +{ + modperl_uri_t *uri = (modperl_uri_t *)apr_pcalloc(p, sizeof(*uri)); + uri->pool = p; + return uri; } Index: modperl_common_util.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_common_util.h,v retrieving revision 1.1 diff -u -r1.1 modperl_common_util.h --- modperl_common_util.h 16 Jun 2004 03:55:47 -0000 1.1 +++ modperl_common_util.h 21 Jun 2004 05:00:55 -0000 @@ -78,6 +78,11 @@ MP_INLINE void *modperl_hash_tied_object(pTHX_ const char *classname, SV *tsv); +MP_INLINE SV *modperl_perl_sv_setref_uv(pTHX_ SV *rv, + const char *classname, UV uv); + +MP_INLINE modperl_uri_t *modperl_uri_new(apr_pool_t *p); + SV *modperl_perl_gensym(pTHX_ char *pack); #endif /* MODPERL_COMMON_UTIL_H */ Index: modperl_util.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_util.c,v retrieving revision 1.70 diff -u -r1.70 modperl_util.c --- modperl_util.c 16 Jun 2004 03:55:47 -0000 1.70 +++ modperl_util.c 21 Jun 2004 05:00:56 -0000 @@ -179,14 +179,6 @@ return sv; } -/* XXX: sv_setref_uv does not exist in 5.6.x */ -MP_INLINE SV *modperl_perl_sv_setref_uv(pTHX_ SV *rv, - const char *classname, UV uv) -{ - sv_setuv(newSVrv(rv, classname), uv); - return rv; -} - static apr_pool_t *modperl_sv2pool(pTHX_ SV *obj, CV *method) { apr_pool_t *p = NULL; @@ -373,13 +365,6 @@ cdata->pool = p; cdata->data = data; return cdata; -} - -MP_INLINE modperl_uri_t *modperl_uri_new(apr_pool_t *p) -{ - modperl_uri_t *uri = (modperl_uri_t *)apr_pcalloc(p, sizeof(*uri)); - uri->pool = p; - return uri; } MP_INLINE void modperl_perl_av_push_elts_ref(pTHX_ AV *dst, AV *src) Index: modperl_util.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_util.h,v retrieving revision 1.62 diff -u -r1.62 modperl_util.h --- modperl_util.h 16 Jun 2004 03:55:47 -0000 1.62 +++ modperl_util.h 21 Jun 2004 05:00:56 -0000 @@ -45,9 +45,6 @@ MP_INLINE SV *modperl_ptr2obj(pTHX_ char *classname, void *ptr); -MP_INLINE SV *modperl_perl_sv_setref_uv(pTHX_ SV *rv, - const char *classname, UV uv); - int modperl_errsv(pTHX_ int status, request_rec *r, server_rec *s); int modperl_require_module(pTHX_ const char *pv, int logfailure); @@ -60,8 +57,6 @@ void modperl_xs_dl_handles_close(void **handles); modperl_cleanup_data_t *modperl_cleanup_data_new(apr_pool_t *p, void *data); - -MP_INLINE modperl_uri_t *modperl_uri_new(apr_pool_t *p); MP_INLINE void modperl_perl_av_push_elts_ref(pTHX_ AV *dst, AV *src); =================================================================== -- best regards, randy --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]