summaryrefslogtreecommitdiffstats
path: root/Bugzilla
diff options
context:
space:
mode:
authorByron Jones <glob@mozilla.com>2014-06-11 17:11:51 +0200
committerByron Jones <glob@mozilla.com>2014-06-11 17:11:51 +0200
commit02719d27e660f1212450a563e0e0b8aefa6c6883 (patch)
tree52e06b9419833d016617b9039f61a939677fbc63 /Bugzilla
parent4d5e362475a95c83f478b846ed847ac5ebe31234 (diff)
downloadbugzilla-02719d27e660f1212450a563e0e0b8aefa6c6883.tar.gz
bugzilla-02719d27e660f1212450a563e0e0b8aefa6c6883.tar.xz
Bug 978146: activity entry when setting flags isn't split across multiple rows
r=dkl,a=sgreen
Diffstat (limited to 'Bugzilla')
-rw-r--r--Bugzilla/Attachment.pm10
-rw-r--r--Bugzilla/Bug.pm14
2 files changed, 11 insertions, 13 deletions
diff --git a/Bugzilla/Attachment.pm b/Bugzilla/Attachment.pm
index 79b7f1213..19c10c8fe 100644
--- a/Bugzilla/Attachment.pm
+++ b/Bugzilla/Attachment.pm
@@ -890,16 +890,12 @@ sub update {
}
# Record changes in the activity table.
- my $sth = $dbh->prepare('INSERT INTO bugs_activity (bug_id, attach_id, who, bug_when,
- fieldid, removed, added)
- VALUES (?, ?, ?, ?, ?, ?, ?)');
-
+ require Bugzilla::Bug;
foreach my $field (keys %$changes) {
my $change = $changes->{$field};
$field = "attachments.$field" unless $field eq "flagtypes.name";
- my $fieldid = get_field_id($field);
- $sth->execute($self->bug_id, $self->id, $user->id, $timestamp,
- $fieldid, $change->[0], $change->[1]);
+ Bugzilla::Bug::LogActivityEntry($self->bug_id, $field, $change->[0],
+ $change->[1], $user->id, $timestamp, undef, $self->id);
}
if (scalar(keys %$changes)) {
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm
index d10fbdfd7..cb132f31d 100644
--- a/Bugzilla/Bug.pm
+++ b/Bugzilla/Bug.pm
@@ -4053,11 +4053,12 @@ sub get_activity {
# Update the bugs_activity table to reflect changes made in bugs.
sub LogActivityEntry {
- my ($i, $col, $removed, $added, $whoid, $timestamp, $comment_id) = @_;
+ my ($bug_id, $field, $removed, $added, $user_id, $timestamp, $comment_id,
+ $attach_id) = @_;
my $sth = Bugzilla->dbh->prepare_cached(
- 'INSERT INTO bugs_activity
- (bug_id, who, bug_when, fieldid, removed, added, comment_id)
- VALUES (?, ?, ?, ?, ?, ?, ?)');
+ 'INSERT INTO bugs_activity
+ (bug_id, who, bug_when, fieldid, removed, added, comment_id, attach_id)
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?)');
# in the case of CCs, deps, and keywords, there's a possibility that someone
# might try to add or remove a lot of them at once, which might take more
@@ -4081,8 +4082,9 @@ sub LogActivityEntry {
}
trick_taint($addstr);
trick_taint($removestr);
- my $fieldid = get_field_id($col);
- $sth->execute($i, $whoid, $timestamp, $fieldid, $removestr, $addstr, $comment_id);
+ my $fieldid = get_field_id($field);
+ $sth->execute($bug_id, $user_id, $timestamp, $fieldid, $removestr,
+ $addstr, $comment_id, $attach_id);
}
}