aboutsummaryrefslogtreecommitdiff
path: root/tests/getpart.pm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/getpart.pm')
-rw-r--r--tests/getpart.pm17
1 files changed, 4 insertions, 13 deletions
diff --git a/tests/getpart.pm b/tests/getpart.pm
index d1c8ec856..ccfbd7d62 100644
--- a/tests/getpart.pm
+++ b/tests/getpart.pm
@@ -34,20 +34,11 @@ sub getpartattr {
) {
$inside++;
my $attr=$1;
- my @p=split("[\t]", $attr);
- my $assign;
- foreach $assign (@p) {
- # $assign is a 'name="contents"' pair
-
- if($assign =~ / *([^=]*)=\"([^\"]*)\"/) {
- # *with* quotes
- $hash{$1}=$2;
- }
- elsif($assign =~ / *([^=]*)=([^\"]*)/) {
- # *without* quotes
- $hash{$1}=$2;
- }
+ while($attr =~ s/ *([^=]*)= *(\"([^\"]*)\"|([^\"> ]*))//) {
+ my ($var, $cont)=($1, $2);
+ $cont =~ s/^\"(.*)\"$/$1/;
+ $hash{$var}=$cont;
}
last;
}