[resent to modperl list; earlier copy mistakenly cc'd to "p5p"]
Does anyone know what's causing the Apache::Request object to
leak here? See # XXX comment below:
<Perl>
package Apache::test;
sub Apache::Request::DESTROY{warn "DEAD: $_[0]\n"}
sub Apache::DESTROY{warn "Dead: $_[0]\n"}
use Devel::Peek;
use Apache::Request;
sub handler {
my $r = shift;
my $apr = Apache::Request->new($r);
Dump($apr); # OK
$r = $apr; # XXX: what's going on here???
Dump($apr); # fscked
$r->send_http_header;
$r->print('apr test');
return 200;
}
1;
</Perl>
<Location /test>
SetHandler perl-script
PerlHandler Apache::test
</Location>
----------> server error log for request to /test <--------------
[Wed Jul 10 07:38:32 2002] [notice] Apache/1.3.27-dev (Unix)
mod_perl/1.27_01-dev Perl/v5.8.0 configured
[...]
SV = RV(0x87aca6c) at 0x89902b8
REFCNT = 1
FLAGS = (PADBUSY,PADMY,ROK)
RV = 0x8626da4
SV = PVMG(0x8703130) at 0x8626da4
REFCNT = 1
FLAGS = (OBJECT,RMG,IOK,pIOK)
IV = 148456972
NV = 0
PV = 0
MAGIC = 0x8d7b2c8
MG_VIRTUAL = 0
MG_TYPE = PERL_MAGIC_ext(~)
MG_FLAGS = 0x02
REFCOUNTED
MG_OBJ = 0x89975dc
SV = RV(0x87aca64) at 0x89975dc
REFCNT = 2
FLAGS = (PADBUSY,PADMY,ROK)
RV = 0x8626c78
SV = PVMG(0x8703110) at 0x8626c78
REFCNT = 2
FLAGS = (OBJECT,IOK,pIOK)
IV = 148451868
NV = 0
PV = 0
STASH = 0x8298510 "Apache"
MG_LEN = -1
MG_PTR = 0x8d9321c ???? - please notify IZ
STASH = 0x835f8ec "Apache::Request"
SV = RV(0x87aca6c) at 0x89902b8
REFCNT = 1
FLAGS = (PADBUSY,PADMY,ROK)
RV = 0x8626da4
SV = PVMG(0x8703130) at 0x8626da4
REFCNT = 2
FLAGS = (OBJECT,RMG,IOK,pIOK)
IV = 148456972
NV = 0
PV = 0
MAGIC = 0x8d7b2c8
MG_VIRTUAL = 0
MG_TYPE = PERL_MAGIC_ext(~)
MG_FLAGS = 0x02
REFCOUNTED
MG_OBJ = 0x89975dc
SV = RV(0x87aca64) at 0x89975dc
REFCNT = 2
FLAGS = (PADBUSY,PADMY,ROK)
RV = 0x8626da4
SV = PVMG(0x8703130) at 0x8626da4
REFCNT = 2
FLAGS = (OBJECT,RMG,IOK,pIOK)
IV = 148456972
NV = 0
PV = 0
MAGIC = 0x8d7b2c8
MG_VIRTUAL = 0
MG_TYPE = PERL_MAGIC_ext(~)
MG_FLAGS = 0x02
REFCOUNTED
MG_OBJ = 0x89975dc
SV = RV(0x87aca64) at 0x89975dc
REFCNT = 2
FLAGS = (PADBUSY,PADMY,ROK)
RV = 0x8626da4
MG_LEN = -1
MG_PTR = 0x8d9321c ???? - please notify IZ
STASH = 0x835f8ec "Apache::Request"
MG_LEN = -1
MG_PTR = 0x8d9321c ???? - please notify IZ
STASH = 0x835f8ec "Apache::Request"
Dead: Apache=SCALAR(0x8626c78)
------------------------------------------------------------