From 3a8142ae9f3cd14b6ca54c6db6f6f07fb9025fe8 Mon Sep 17 00:00:00 2001 From: Max Kanat-Alexander Date: Mon, 15 Aug 2011 17:47:18 -0700 Subject: Bug 460074: Make post_bug.cgi use should_set for array fields, so they are undef in Bugzilla::Bug->create if not passed to post_bug. This fixes a bug with the guided bug form creating bugs without any groups. r=LpSolit, a=mkanat --- post_bug.cgi | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'post_bug.cgi') diff --git a/post_bug.cgi b/post_bug.cgi index 6d6ed746c..6ca46fb3c 100755 --- a/post_bug.cgi +++ b/post_bug.cgi @@ -153,14 +153,17 @@ my %bug_params; foreach my $field (@bug_fields) { $bug_params{$field} = $cgi->param($field); } -$bug_params{'cc'} = [$cgi->param('cc')]; -$bug_params{'groups'} = [$cgi->param('groups')]; -$bug_params{'comment'} = $comment; +foreach my $field (qw(cc groups)) { + next if !$cgi->should_set($field); + $bug_params{$field} = [$cgi->param($field)]; +} +$bug_params{'comment'} = $comment; my @multi_selects = grep {$_->type == FIELD_TYPE_MULTI_SELECT && $_->enter_bug} Bugzilla->active_custom_fields; foreach my $field (@multi_selects) { + next if !$cgi->should_set($field->name); $bug_params{$field->name} = [$cgi->param($field->name)]; } -- cgit v1.2.3-24-g4f1b