From 18f98f9c23c427c8a253e8663237fe745eb34538 Mon Sep 17 00:00:00 2001 From: dklawren Date: Thu, 31 Aug 2017 10:07:39 -0400 Subject: Bug 1395346 - Allow setting obsolete to false for phabricator attachments when a user reclaims a revision (#227) --- extensions/PhabBugz/lib/WebService.pm | 10 ++++++++-- 1 file 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); -- cgit v1.2.3-24-g4f1b