You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apreq-cvs@httpd.apache.org by do...@apache.org on 2001/01/09 05:21:08 UTC
cvs commit: httpd-apreq/Request Request.xs
dougm 01/01/08 20:21:08
Modified: . Changes
Request Request.xs
Log:
fix subclassing mechanism so the the value of an `r' or `_r' key can
be a hash ref
Revision Changes Path
1.28 +3 -0 httpd-apreq/Changes
Index: Changes
===================================================================
RCS file: /home/cvs/httpd-apreq/Changes,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- Changes 2001/01/07 03:31:35 1.27
+++ Changes 2001/01/09 04:21:07 1.28
@@ -4,6 +4,9 @@
=item 0.32 - ?
+fix subclassing mechanism so the the value of an `r' or `_r' key can
+be a hash ref [dougm]
+
fix win32 build (requires mod_perl later than 1.24_01)
[Randy Kobes <ra...@theoryx5.uwinnipeg.ca>]
1.7 +6 -4 httpd-apreq/Request/Request.xs
Index: Request.xs
===================================================================
RCS file: /home/cvs/httpd-apreq/Request/Request.xs,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- Request.xs 2001/01/07 03:31:36 1.6
+++ Request.xs 2001/01/09 04:21:08 1.7
@@ -41,14 +41,16 @@
static ApacheRequest *sv_2apreq(SV *sv)
{
if (SvROK(sv) && sv_derived_from(sv, "Apache::Request")) {
- SV *obj;
+ SV *obj = sv;
- switch (SvTYPE(SvRV(sv))) {
+ switch (SvTYPE(SvRV(obj))) {
case SVt_PVHV :
- obj = r_key_sv(sv);
+ do {
+ obj = r_key_sv(obj);
+ } while (SvROK(obj) && (SvTYPE(SvRV(obj)) == SVt_PVHV));
break;
default:
- obj = sv;
+ break;
};
return (ApacheRequest *)SvIV((SV*)SvRV(obj));
}