diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2012-01-01 19:19:07 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2012-01-01 19:19:07 -0600 |
commit | cf5706eb5adbe5858d87118d200e233abfa1271f (patch) | |
tree | 9c4da2dc3e403f2cdfa2cf8d632098a12fdad2e4 /kalyptus/kdocUtil.pm | |
parent | 795a0355a40293affc7164507e918440d4a828d6 (diff) | |
download | libtqt-perl-cf5706eb5adbe5858d87118d200e233abfa1271f.tar.gz libtqt-perl-cf5706eb5adbe5858d87118d200e233abfa1271f.zip |
Update embedded kalyptus installation
Diffstat (limited to 'kalyptus/kdocUtil.pm')
-rw-r--r-- | kalyptus/kdocUtil.pm | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/kalyptus/kdocUtil.pm b/kalyptus/kdocUtil.pm index e045a67..f77c083 100644 --- a/kalyptus/kdocUtil.pm +++ b/kalyptus/kdocUtil.pm @@ -161,23 +161,28 @@ sub splitUnnested($$) { my $depth = 0; my $start = 0; my $indoublequotes = 0; - while($string =~ /($delim|<<|>>|[][}{)(><\"])/g) { + my $insinglequotes = 0; + while($string =~ /($delim|<<|>>|[][}{)(><\"\'])/g) { my $c = $1; - if(!$depth and !$indoublequotes and $c eq $delim) { - my $len = pos($string) - $start - 1; - push @ret, substr($string, $start, $len); - $start = pos($string); - } elsif($open{$c}) { - $depth++; - } elsif($close{$c}) { - $depth--; - } elsif($c eq '"') { - if ($indoublequotes) { - $indoublequotes = 0; - } else { + if(!$insinglequotes and !$indoublequotes) { + if(!$depth and $c eq $delim) { + my $len = pos($string) - $start - 1; + push @ret, substr($string, $start, $len); + $start = pos($string); + } elsif( $c eq "'") { + $insinglequotes = 1; + } elsif( $c eq '"') { $indoublequotes = 1; - } - } + } elsif($open{$c}) { + $depth++; + } elsif($close{$c}) { + $depth--; + } + } elsif($c eq '"' and $indoublequotes) { + $indoublequotes = 0; + } elsif ($c eq "'" and $insinglequotes) { + $insinglequotes = 0; + } } my $subs = substr($string, $start); |