From ed06de9de3117f8894872495e973ff812212ff91 Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Wed, 10 Jan 2007 00:16:54 +0000 Subject: Bug 365444: Obsolete custom fields are shown in e-mail notifications for new bugs, despite they shouldn't - Patch by Frédéric Buclin r=mkanat a=myk MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bugzilla/BugMail.pm | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'Bugzilla/BugMail.pm') diff --git a/Bugzilla/BugMail.pm b/Bugzilla/BugMail.pm index ca7e20b1e..9b70da03e 100644 --- a/Bugzilla/BugMail.pm +++ b/Bugzilla/BugMail.pm @@ -99,15 +99,14 @@ sub Send { my $msg = ""; my $dbh = Bugzilla->dbh; - - my $fields = $dbh->selectall_arrayref('SELECT name, description, mailhead - FROM fielddefs ORDER BY sortkey'); - - foreach my $fielddef (@$fields) { - my ($field, $description, $mailhead) = @$fielddef; - push(@headerlist, $field); - $defmailhead{$field} = $mailhead; - $fielddescription{$field} = $description; + + # XXX - These variables below are useless. We could use field object + # methods directly. But we first have to implement a cache in + # Bugzilla->get_fields to avoid querying the DB all the time. + foreach my $field (Bugzilla->get_fields({obsolete => 0})) { + push(@headerlist, $field->name); + $defmailhead{$field->name} = $field->in_new_bugmail; + $fielddescription{$field->name} = $field->description; } my %values = %{$dbh->selectrow_hashref( -- cgit v1.2.3-24-g4f1b