Skip to content

Commit e46f264

Browse files
committed
Implemented support for ";" as a separator between pairs. Pairs without a name/value separator is now also accepted.
1 parent 1934d7f commit e46f264

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

Diff for: lib/URL/Encode/PP.pm

+5-6
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ use warnings;
66
use Carp qw[];
77

88
BEGIN {
9-
our $VERSION = '0.01';
9+
our $VERSION = '0.03';
1010
our @EXPORT_OK = qw[ url_encode
1111
url_encode_utf8
1212
url_decode
@@ -74,10 +74,10 @@ sub url_params_each {
7474
utf8::downgrade($s, 1)
7575
or Carp::croak(q/Wide character in octet string/);
7676

77-
foreach my $pair (split /[&]/, $s) {
78-
my ($k, $v) = split /=/, $pair, 2;
79-
next unless defined $k && defined $v;
80-
for ($k, $v) {
77+
foreach my $pair (split /[&;]/, $s, -1) {
78+
my ($k, $v) = split '=', $pair, 2;
79+
$k = '' unless defined $k;
80+
for ($k, defined $v ? $v : ()) {
8181
y/+/\x20/;
8282
s/%([0-9a-fA-F]{2})/$DecodeMap{$1}/gs;
8383
if ($utf8) {
@@ -132,4 +132,3 @@ sub url_params_multi {
132132

133133
1;
134134

135-

0 commit comments

Comments
 (0)