gozer 2004/08/09 14:42:35
Modified: . Changes lib/Apache compat.pm t/response/TestCompat apache.pm todo release Log: Apache::compat server_root_relative now correctly handles absolute paths like ap_server_root_relative does Reviewed by: stas Revision Changes Path 1.431 +3 -0 modperl-2.0/Changes Index: Changes =================================================================== RCS file: /home/cvs/modperl-2.0/Changes,v retrieving revision 1.430 retrieving revision 1.431 diff -u -r1.430 -r1.431 --- Changes 9 Aug 2004 04:31:20 -0000 1.430 +++ Changes 9 Aug 2004 21:42:34 -0000 1.431 @@ -12,6 +12,9 @@ =item 1.99_15-dev +Apache::compat server_root_relative now correctly handles absolute +paths like ap_server_root_relative does [Gozer] + Fix a bug in <Perl> sections with multiple aliases in a virtualhost container. [Gozer] 1.115 +6 -1 modperl-2.0/lib/Apache/compat.pm Index: compat.pm =================================================================== RCS file: /home/cvs/modperl-2.0/lib/Apache/compat.pm,v retrieving revision 1.114 retrieving revision 1.115 diff -u -r1.114 -r1.115 --- compat.pm 24 Jul 2004 07:27:03 -0000 1.114 +++ compat.pm 9 Aug 2004 21:42:35 -0000 1.115 @@ -250,7 +250,12 @@ sub server_root_relative { my $class = shift; - File::Spec->catfile(Apache::ServerUtil::server_root, @_); + if (@_ && defined($_[0]) && File::Spec->file_name_is_absolute($_[0])) { + return File::Spec->catfile(@_); + } + else { + File::Spec->catfile(Apache::ServerUtil::server_root, @_); + } } sub exit { 1.17 +6 -1 modperl-2.0/t/response/TestCompat/apache.pm Index: apache.pm =================================================================== RCS file: /home/cvs/modperl-2.0/t/response/TestCompat/apache.pm,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- apache.pm 16 Jul 2004 01:10:46 -0000 1.16 +++ apache.pm 9 Aug 2004 21:42:35 -0000 1.17 @@ -17,7 +17,7 @@ sub handler { my $r = shift; - plan $r, tests => 16; + plan $r, tests => 17; $r->send_http_header('text/plain'); @@ -86,6 +86,11 @@ ok t_filepath_cmp(canonpath(Apache->server_root_relative), canonpath($server_root), 'Apache->server_root_relative()'); + + my $path = catfile(Apache::ServerUtil::server_root, 'logs'); + ok t_filepath_cmp(canonpath(Apache->server_root_relative($path)), + canonpath($path), + "Apache->server_root_relative('$path')"); } OK; 1.41 +0 -4 modperl-2.0/todo/release Index: release =================================================================== RCS file: /home/cvs/modperl-2.0/todo/release,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- release 9 Aug 2004 00:56:46 -0000 1.40 +++ release 9 Aug 2004 21:42:35 -0000 1.41 @@ -8,10 +8,6 @@ http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=108967266419527&w=2 owner: gozer -* the following methods/functions are using compat implementations in - tests and should use the real 2.0 API: method_register, - server_root_relative - * filters reset $@ generated by eval, see if we can fix that. The TODO test: TestFilter::out_str_eval presents the case The description is here: