> I'm not sure what you mean here. > Note that *variables* are lexically scoped, but not values.
I was surprised that the "SCALAR(0x8ca70e4)" output was identical on subsequent requests to a child -- indicating to me that the ref (and what it was refering to) may have survived the request cycle? I guess would have expected a different ref, especially after running through the top part of the handler again, where it reinitializes them. I've included the code again below for convenience). Also, the internal magic (switching from PV to PVMG) seems to survive the request cycle? Regardlesss of whether the $r->print() behavior is going to be changed, I was surprised that the regex from first request effected the behavior on the second request. Just my thoughts as a curious mortal :) Thanks, Jonathan --- sub handler { my $r = shift; $r->send_http_header("text/plain"); my $data = "hello\n"; my $dataref = \$data; # normally we can pass a reference to Apache's print $r->print($dataref); $$dataref =~ s/(h)/$1/; # but not if we've done a successful backreferenced pattern match $r->print($dataref); } 1; On the first request to a given child, I get: hello SCALAR(0x8ca70e4) On subsequent requests I get: SCALAR(0x8ca70e4)SCALAR(0x8ca70e4) -- Reporting bugs: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html