# Remember to update this in Catalyst::Runtime as well!
-our $VERSION = '5.7005';
+our $VERSION = '5.7006';
sub import {
my ( $class, @arguments ) = @_;
$path ||= '';
$namespace = '' if $path =~ /^\//;
$path =~ s/^\///;
+ $path =~ s/\?/%3F/g;
my $params =
( scalar @args && ref $args[$#args] eq 'HASH' ? pop @args : {} );
for my $value ( values %$params ) {
+ next unless defined $value;
for ( ref $value eq 'ARRAY' ? @$value : $value ) {
$_ = "$_";
utf8::encode( $_ );
};
# join args with '/', or a blank string
- my $args = ( scalar @args ? '/' . join( '/', @args ) : '' );
+ my $args = ( scalar @args ? '/' . join( '/', map {s/\?/%3F/g; $_} @args ) : '' );
$args =~ s/^\/// unless $path;
my $res =
URI->new_abs( URI->new_abs( "$path$args", "$basepath$namespace" ), $base )