summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xBugzilla/Bug.pm32
-rwxr-xr-xpost_bug.cgi17
2 files changed, 41 insertions, 8 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm
index 9c9e2828d..406e70aca 100755
--- a/Bugzilla/Bug.pm
+++ b/Bugzilla/Bug.pm
@@ -262,6 +262,13 @@ sub _check_bug_file_loc {
return $url;
}
+sub _check_bug_severity {
+ my ($severity) = @_;
+ $severity = trim($severity);
+ check_field('bug_severity', $severity);
+ return $severity;
+}
+
sub _check_bug_status {
my ($status, $product) = @_;
my $user = Bugzilla->user;
@@ -363,6 +370,31 @@ sub _check_product {
return $obj;
}
+sub _check_op_sys {
+ my ($op_sys) = @_;
+ $op_sys = trim($op_sys);
+ check_field('op_sys', $op_sys);
+ return $op_sys;
+}
+
+sub _check_priority {
+ my ($priority) = @_;
+ if (!Bugzilla->params->{'letsubmitterchoosepriority'}) {
+ $priority = Bugzilla->params->{'defaultpriority'};
+ }
+ $priority = trim($priority);
+ check_field('priority', $priority);
+
+ return $priority;
+}
+
+sub _check_rep_platform {
+ my ($platform) = @_;
+ $platform = trim($platform);
+ check_field('rep_platform', $platform);
+ return $platform;
+}
+
sub _check_short_desc {
my ($short_desc) = @_;
# Set the parameter to itself, but cleaned up
diff --git a/post_bug.cgi b/post_bug.cgi
index 33e58f182..ec44f6c48 100755
--- a/post_bug.cgi
+++ b/post_bug.cgi
@@ -191,15 +191,16 @@ if (!defined $cgi->param('target_milestone')) {
$cgi->param(-name => 'target_milestone', -value => $product->default_milestone);
}
-if (!Bugzilla->params->{'letsubmitterchoosepriority'}) {
- $cgi->param(-name => 'priority', -value => Bugzilla->params->{'defaultpriority'});
-}
-
# Some more sanity checking
-check_field('rep_platform', scalar $cgi->param('rep_platform'));
-check_field('bug_severity', scalar $cgi->param('bug_severity'));
-check_field('priority', scalar $cgi->param('priority'));
-check_field('op_sys', scalar $cgi->param('op_sys'));
+$cgi->param(-name => 'priority', -value => Bugzilla::Bug::_check_priority(
+ $cgi->param('priority')));
+$cgi->param(-name => 'rep_platform',
+ -value => Bugzilla::Bug::_check_rep_platform($cgi->param('rep_platform')));
+$cgi->param(-name => 'bug_severity',
+ -value => Bugzilla::Bug::_check_bug_severity($cgi->param('bug_severity')));
+$cgi->param(-name => 'op_sys', -value => Bugzilla::Bug::_check_op_sys(
+ $cgi->param('op_sys')));
+
check_field('version', scalar $cgi->param('version'),
[map($_->name, @{$product->versions})]);
check_field('target_milestone', scalar $cgi->param('target_milestone'),