I have a TransHandler that's setting a note with $r->notes("something",
"something") the first time it runs.
When I give it a directory ($r->uri is something like "/whatever/"),
then Apache runs my TransHandler several times, where $r->uri looks like
"/whatever/", then "/whatever/index.html".
Now, the second time the TransHandler runs in the same request (with the
/index.html that mod_dir added), it doesn't see the note that the first
time left! I've double-checked the code, and made it dump the notes
table to stderr, to no avail. The note just goes away.
Question: is it supposed to do that? Is there a suggested workaround?
Here's a simple test case of a TransHandler that shows this behavior:
sub handler {
my $r = shift;
my $uri = $r->uri;
my $notes = $r->notes;
print STDERR "Notes init ($uri)!\n";
foreach my $k (keys %$notes) {
my $v = $notes->{$k};
print STDERR "NOTE ($k) -> ($v)\n";
}
print STDERR "---------\n";
$r->notes("hello", "world") unless $uri =~ /html/;
print STDERR "Notes exit!\n";
foreach my $k (keys %$notes) {
my $v = $notes->{$k};
print STDERR "NOTE ($k) -> ($v)\n";
}
print STDERR "---------\n";
return DECLINED;
}
And the error_log of requesting / on this server:
[Wed May 31 19:42:35 2000] [notice] Apache/1.3.12 (Unix) mod_perl/1.21 configure
d -- resuming normal operations
Notes init (/)!
---------
Notes exit!
NOTE (hello) -> (world)
---------
Notes init (/)!
---------
Notes exit!
NOTE (hello) -> (world)
---------
Notes init (/index.html)!
---------
Notes exit!
---------
Notes init (/index.html)!
---------
Notes exit!
---------
--
Roger Espel Llima, [EMAIL PROTECTED]
http://www.iagora.com/~espel/index.html