diff mbox series

[OSSTEST,51/60] history reporting (nfc): Quote keys too

Message ID 20200814172205.9624-52-ian.jackson@eu.citrix.com (mailing list archive)
State New, archived
Headers show
Series Speed up sg-report-job-history | expand

Commit Message

Ian Jackson Aug. 14, 2020, 5:21 p.m. UTC
Right now all the callers have keys which don't need quoting.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/HistoryReport.pm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/Osstest/HistoryReport.pm b/Osstest/HistoryReport.pm
index 20913d27..3e2ad0d3 100644
--- a/Osstest/HistoryReport.pm
+++ b/Osstest/HistoryReport.pm
@@ -147,8 +147,9 @@  sub cache_read_previous ($) {
 		$jr->{'%'.$&} = $ch;
 		next;
 	    }
-	    s{^(\w+)=}{} or die "$orig -- $_ ";
-	    my $k = $1;
+	    # Tolerate %, which will be de-quoted by url_unquote
+	    s{^([\%$url_ok_chars]+)=}{}i or die "$orig -- $_ ";
+	    my $k = url_unquote($1);
 	    $ch->{$k} = url_unquote($_);
 	}
 	push @previous, $jr;
@@ -192,7 +193,7 @@  sub cache_write_entry ($$) {
 	    next if $k =~ m/^\%/;
 	    $_ = $h->{$k};
 	    next unless defined;
-	    printf $fh " %s=%s", $k, url_quote($_);
+	    printf $fh " %s=%s", url_quote($k), url_quote($_);
 	}
     };
     $whash->($jr);