You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by jm...@apache.org on 2008/11/04 12:14:19 UTC
svn commit: r711224 - /spamassassin/trunk/masses/rule-qa/automc/ruleqa.cgi
Author: jm
Date: Tue Nov 4 03:14:19 2008
New Revision: 711224
URL: http://svn.apache.org/viewvc?rev=711224&view=rev
Log:
fix another bug in ?q=RULE_NAME feature
Modified:
spamassassin/trunk/masses/rule-qa/automc/ruleqa.cgi
Modified: spamassassin/trunk/masses/rule-qa/automc/ruleqa.cgi
URL: http://svn.apache.org/viewvc/spamassassin/trunk/masses/rule-qa/automc/ruleqa.cgi?rev=711224&r1=711223&r2=711224&view=diff
==============================================================================
--- spamassassin/trunk/masses/rule-qa/automc/ruleqa.cgi (original)
+++ spamassassin/trunk/masses/rule-qa/automc/ruleqa.cgi Tue Nov 4 03:14:19 2008
@@ -151,12 +151,8 @@
# "?q=FOO" is a shortcut for "?rule=FOO&s_detail=1"; good for shortcuts
my $q = $self->{q}->param("q");
if ($q) {
- $self->{q}->param(-name=>"rule", -value=>$q);
-
- # ensure links from here include this
- $self->{cgi_params}{"rule"} = "rule=".uri_escape($q);
- push @{$self->{cgi_param_order}}, "rule";
-
+ $self->add_cgi_param("rule", $q);
+ $self->add_cgi_param("s_detail", 1);
$self->{s}{detail} = 1;
}
@@ -1523,13 +1519,23 @@
}
}
-sub add_cgi_path_param {
- my ($self, $k, $v) = @_;
+sub add_cgi_path_param { # assumes already escaped unless $not_escaped
+ my ($self, $k, $v, $not_escaped) = @_;
if (!defined $self->{cgi_params}{$k}) {
- $self->{cgi_params}{$k} = "$k=$v";
push (@{$self->{cgi_param_order}}, $k);
}
- $self->{q}->param(-name=>$k, -value=>uri_unescape($v));
+ if ($not_escaped) {
+ $self->{cgi_params}{$k} = $k."=".uri_escape($v);
+ $self->{q}->param(-name=>$k, -value=>$v);
+ } else {
+ $self->{cgi_params}{$k} = $k."=".$v;
+ $self->{q}->param(-name=>$k, -value=>uri_unescape($v));
+ }
+}
+
+sub add_cgi_param { # a variant for unescaped data
+ my ($self, $k, $v) = @_;
+ return $self->add_cgi_path_param($k, $v, 1);
}
sub get_params_except {