]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1584332 - older comment edits/changes returned by API call with history restricte...
authordklawren <dklawren@users.noreply.github.com>
Mon, 14 Oct 2019 14:25:27 +0000 (10:25 -0400)
committerGitHub <noreply@github.com>
Mon, 14 Oct 2019 14:25:27 +0000 (10:25 -0400)
extensions/EditComments/Extension.pm

index 5fda9d870e6a0978cc65e629df7b32c2e5d3ca94..8244a84255766a128fcfee009bb12bcad3418abf 100644 (file)
@@ -267,15 +267,24 @@ sub get_bug_activity {
 
   return unless $args->{include_comment_activity};
 
-  my $list = $args->{list};
+  my $list       = $args->{list};
+  my $starttime  = $args->{start_time};
   my $is_insider = Bugzilla->user->is_insider;
   my $hidden_placeholder = '(Hidden by Administrator)';
 
-  my $edited_comment_ids
-    = Bugzilla->dbh->selectcol_arrayref('
-      SELECT DISTINCT(c.comment_id) from longdescs_activity AS a
+  my $query = "SELECT DISTINCT(c.comment_id) from longdescs_activity AS a
       INNER JOIN longdescs AS c ON c.comment_id = a.comment_id AND c.bug_id = ?
-    ' . ($is_insider ? '' : 'AND c.isprivate = 0'), undef, $args->{bug_id});
+    " . ($is_insider ? '' : 'AND c.isprivate = 0');
+  my @args = ($args->{bug_id});
+
+  # Only consider changes since $starttime, if given.
+  if (defined $starttime) {
+    $query .= ' WHERE a.change_when > ?';
+    push(@args, $starttime);
+  }
+
+  my $edited_comment_ids
+    = Bugzilla->dbh->selectcol_arrayref($query, undef, @args);
 
   foreach my $comment_id (@$edited_comment_ids) {
     my $prev_rev = {};