Bug 361870: SQL query in Bugzilla::Bug::EmitDependList() too complicated - Patch by Fr��d��ric Buclin <LpSolit@gmail.com> r=bkor a=justdave

This commit is contained in:
lpsolit%gmail.com 2006-11-27 17:48:56 +00:00
Родитель 570fc65042
Коммит 55ab71d1f3
2 изменённых файлов: 8 добавлений и 14 удалений

Просмотреть файл

@ -1363,18 +1363,15 @@ sub editable_bug_fields {
return sort(@fields);
}
# This method is private and is not to be used outside of the Bug class.
# XXX - When Bug::update() will be implemented, we should make this routine
# a private method.
sub EmitDependList {
my ($myfield, $targetfield, $bug_id) = (@_);
my $dbh = Bugzilla->dbh;
my $list_ref =
$dbh->selectcol_arrayref(
"SELECT dependencies.$targetfield
FROM dependencies, bugs
WHERE dependencies.$myfield = ?
AND bugs.bug_id = dependencies.$targetfield
ORDER BY dependencies.$targetfield",
undef, ($bug_id));
my $list_ref = $dbh->selectcol_arrayref(
"SELECT $targetfield FROM dependencies
WHERE $myfield = ? ORDER BY $targetfield",
undef, $bug_id);
return $list_ref;
}

Просмотреть файл

@ -1273,11 +1273,8 @@ sub SnapShotBug {
sub SnapShotDeps {
my ($i, $target, $me) = (@_);
my $dbh = Bugzilla->dbh;
my $list = $dbh->selectcol_arrayref(qq{SELECT $target FROM dependencies
WHERE $me = ? ORDER BY $target},
undef, $i);
my ($bug_id, $target, $me) = (@_);
my $list = Bugzilla::Bug::EmitDependList($me, $target, $bug_id);
return join(',', @$list);
}