# from CGI.pm sub parse_params { my($self,$tosplit) = @_; my(@pairs) = split(/[&;]/,$tosplit); my($param,$value); foreach (@pairs) { ($param,$value) = split('=',$_,2); $value = '' unless defined $value; $param = unescape($param); # this is where the situation goes unchecked... # CGI::Util::unescape returns undef if $param is undef # none the wiser and no error checking! $value = unescape($value); $self->add_parameter($param); push (@{$self->{$param}},$value); } }