summaryrefslogtreecommitdiffstats
path: root/extensions/PhabBugz/lib
diff options
context:
space:
mode:
authorDavid Lawrence <dkl@mozilla.com>2017-08-30 09:49:17 +0200
committerDavid Lawrence <dkl@mozilla.com>2017-08-30 09:49:17 +0200
commitc48fede1691feb1056cd21422716f297af9e7bc3 (patch)
tree64946b549cc2ad8742c62c9a1d14cfb58c7cb1ae /extensions/PhabBugz/lib
parent2314495acf103fc45486a59d6543454ccd8f4363 (diff)
downloadbugzilla-c48fede1691feb1056cd21422716f297af9e7bc3.tar.gz
bugzilla-c48fede1691feb1056cd21422716f297af9e7bc3.tar.xz
Bug 1395346 - Allow setting obsolete to false for phabricator attachments when a user reclaims a revision
Diffstat (limited to 'extensions/PhabBugz/lib')
-rw-r--r--extensions/PhabBugz/lib/WebService.pm10
1 files changed, 8 insertions, 2 deletions
diff --git a/extensions/PhabBugz/lib/WebService.pm b/extensions/PhabBugz/lib/WebService.pm
index 5668eac81..e09a72036 100644
--- a/extensions/PhabBugz/lib/WebService.pm
+++ b/extensions/PhabBugz/lib/WebService.pm
@@ -231,10 +231,16 @@ sub obsolete_attachments {
ThrowCodeError('param_required', { param => 'bug_id' })
}
+ my $make_obsolete = $params->{make_obsolete};
+ unless (defined $make_obsolete) {
+ ThrowCodeError('param_required', { param => 'make_obsolete' })
+ }
+ $make_obsolete = $make_obsolete ? 1 : 0;
+
my $bug = Bugzilla::Bug->check($bug_id);
my @attachments =
- grep { is_attachment_phab_revision($_) } @{ $bug->attachments() };
+ grep { is_attachment_phab_revision($_, 1) } @{ $bug->attachments() };
return { result => [] } if !@attachments;
@@ -246,7 +252,7 @@ sub obsolete_attachments {
my ($curr_revision_id) = ($attachment->filename =~ PHAB_ATTACHMENT_PATTERN);
next if $revision_id != $curr_revision_id;
- $attachment->set_is_obsolete(1);
+ $attachment->set_is_obsolete($make_obsolete);
$attachment->update($timestamp);
push(@updated_attach_ids, $attachment->id);