Hello! I guess I've found a bug in mod_perl2. But I'd like to ask the users list first, if anyone has an idea what goes wrong.
I've run into troubles accessing the __DATA__ section of my modules/handlers. A minimal demonstration handler looks like this: #!/usr/bin/perl package TestHandler; sub handler { warn tell DATA; warn <DATA>; return 0; } 1; __DATA__ foo bar baz (On the first run) It will correctly put this into the server log: 121 at [..]/TestHandler.pm line 5. foo bar baz But when I preload this module using the Apache directive PerlRequire /some/preload_script.pl which contains: use TestHandler; The cursor on the DATA filehandle will be wrong: 133 at /usr/local/lib/perl/5.8.7/TestHandler.pm line 5. Warning: something's wrong at [..]/TestHandler.pm line 6. In this case the cursor is positioned at the end of the file (which has a length of 133 bytes). In other, larger modules the cursor sometimes is positioned somewhere in the middle of the DATA section. I don't think that this is the intended behaviour. It works fine when not preloading the module. It also works fine on Apache1/mod_perl1. Any ideas? Thanks! -Thomas