Commit c9406294 authored by lpsolit%gmail.com's avatar lpsolit%gmail.com

Bug 433514: Renaming a saved search with the same name of different case causes…

Bug 433514: Renaming a saved search with the same name of different case causes db error - Patch by Fré©ric Buclin <LpSolit@gmail.com> r/a=mkanat
parent 1d34c237
...@@ -55,7 +55,7 @@ use constant VALIDATORS => { ...@@ -55,7 +55,7 @@ use constant VALIDATORS => {
link_in_footer => \&_check_link_in_footer, link_in_footer => \&_check_link_in_footer,
}; };
use constant UPDATE_COLUMNS => qw(query query_type); use constant UPDATE_COLUMNS => qw(name query query_type);
############## ##############
# Validators # # Validators #
...@@ -79,6 +79,8 @@ sub _check_query { ...@@ -79,6 +79,8 @@ sub _check_query {
$query || ThrowUserError("buglist_parameters_required"); $query || ThrowUserError("buglist_parameters_required");
my $cgi = new Bugzilla::CGI($query); my $cgi = new Bugzilla::CGI($query);
$cgi->clean_search_url; $cgi->clean_search_url;
# Don't store the query name as a parameter.
$cgi->delete('known_name');
return $cgi->query_string; return $cgi->query_string;
} }
...@@ -204,6 +206,7 @@ sub user { ...@@ -204,6 +206,7 @@ sub user {
# Mutators # # Mutators #
############ ############
sub set_name { $_[0]->set('name', $_[1]); }
sub set_url { $_[0]->set('query', $_[1]); } sub set_url { $_[0]->set('query', $_[1]); }
sub set_query_type { $_[0]->set('query_type', $_[1]); } sub set_query_type { $_[0]->set('query_type', $_[1]); }
......
...@@ -298,9 +298,10 @@ sub InsertNamedQuery { ...@@ -298,9 +298,10 @@ sub InsertNamedQuery {
my $dbh = Bugzilla->dbh; my $dbh = Bugzilla->dbh;
$query_name = trim($query_name); $query_name = trim($query_name);
my ($query_obj) = grep {$_->name eq $query_name} @{Bugzilla->user->queries}; my ($query_obj) = grep {lc($_->name) eq lc($query_name)} @{Bugzilla->user->queries};
if ($query_obj) { if ($query_obj) {
$query_obj->set_name($query_name);
$query_obj->set_url($query); $query_obj->set_url($query);
$query_obj->set_query_type($query_type); $query_obj->set_query_type($query_type);
$query_obj->update(); $query_obj->update();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment