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]

Reply via email to