From: dklawren Date: Mon, 14 Oct 2019 14:25:27 +0000 (-0400) Subject: Bug 1584332 - older comment edits/changes returned by API call with history restricte... X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=da50d51599076aaa432599daed65b11750831f89;p=thirdparty%2Fbugzilla.git Bug 1584332 - older comment edits/changes returned by API call with history restricted by new_since=YYYY-MM-DD --- diff --git a/extensions/EditComments/Extension.pm b/extensions/EditComments/Extension.pm index 5fda9d870..8244a8425 100644 --- a/extensions/EditComments/Extension.pm +++ b/extensions/EditComments/Extension.pm @@ -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 = {};