summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bugzilla/Flag.pm15
-rwxr-xr-xattachment.cgi6
-rwxr-xr-xprocess_bug.cgi3
3 files changed, 11 insertions, 13 deletions
diff --git a/Bugzilla/Flag.pm b/Bugzilla/Flag.pm
index 6c5adf440..4c4864ea7 100644
--- a/Bugzilla/Flag.pm
+++ b/Bugzilla/Flag.pm
@@ -414,11 +414,12 @@ used to obtain the flag fields that the user submitted.
=cut
sub process {
- my ($target, $timestamp, $cgi) = @_;
+ my ($bug_id, $attach_id, $timestamp, $cgi) = @_;
my $dbh = Bugzilla->dbh;
- my $bug_id = $target->{'bug'}->{'id'};
- my $attach_id = $target->{'attachment'}->{'id'};
+ my $target = get_target($bug_id, $attach_id);
+ # Make sure the target exists.
+ return unless $target->{'exists'};
# Use the date/time we were given if possible (allowing calling code
# to synchronize the comment's timestamp with those of other records).
@@ -742,7 +743,7 @@ sub FormToNewFlags {
my @type_ids = map(/^flag_type-(\d+)$/ ? $1 : (), $cgi->param());
@type_ids = grep($cgi->param("flag_type-$_") ne 'X', @type_ids);
- return () unless (scalar(@type_ids) && $target->{'exists'});
+ return () unless scalar(@type_ids);
# Get information about the setter to add to each flag.
my $setter = new Bugzilla::User($::userid);
@@ -846,7 +847,7 @@ sub GetBug {
=over
-=item C<GetTarget($bug_id, $attach_id)>
+=item C<get_target($bug_id, $attach_id)>
Someone please document this function.
@@ -854,7 +855,7 @@ Someone please document this function.
=cut
-sub GetTarget {
+sub get_target {
my ($bug_id, $attach_id) = @_;
# Create an object representing the target bug/attachment.
@@ -1038,7 +1039,7 @@ sub perlify_record {
exists => $exists ,
id => $id ,
type => Bugzilla::FlagType::get($type_id) ,
- target => GetTarget($bug_id, $attach_id) ,
+ target => get_target($bug_id, $attach_id) ,
requestee => $requestee_id ? new Bugzilla::User($requestee_id) : undef,
setter => new Bugzilla::User($setter_id) ,
status => $status ,
diff --git a/attachment.cgi b/attachment.cgi
index ea04e2c19..fba504690 100755
--- a/attachment.cgi
+++ b/attachment.cgi
@@ -1054,8 +1054,7 @@ sub insert
}
# Create flags.
- my $target = Bugzilla::Flag::GetTarget(undef, $attachid);
- Bugzilla::Flag::process($target, $timestamp, $cgi);
+ Bugzilla::Flag::process($bugid, $attachid, $timestamp, $cgi);
# Define the variables and functions that will be passed to the UI template.
$vars->{'mailrecipients'} = { 'changer' => Bugzilla->user->login,
@@ -1203,8 +1202,7 @@ sub update
# to attachments so that we can delete pending requests if the user
# is obsoleting this attachment without deleting any requests
# the user submits at the same time.
- my $target = Bugzilla::Flag::GetTarget(undef, $attach_id);
- Bugzilla::Flag::process($target, $timestamp, $cgi);
+ Bugzilla::Flag::process($bugid, $attach_id, $timestamp, $cgi);
# Update the attachment record in the database.
SendSQL("UPDATE attachments
diff --git a/process_bug.cgi b/process_bug.cgi
index b330615ce..b0decb861 100755
--- a/process_bug.cgi
+++ b/process_bug.cgi
@@ -1737,8 +1737,7 @@ foreach my $id (@idlist) {
}
}
# Set and update flags.
- my $target = Bugzilla::Flag::GetTarget($id);
- Bugzilla::Flag::process($target, $timestamp, $cgi);
+ Bugzilla::Flag::process($id, undef, $timestamp, $cgi);
if ($bug_changed) {
SendSQL("UPDATE bugs SET delta_ts = $sql_timestamp WHERE bug_id = $id");