summaryrefslogtreecommitdiffstats
path: root/extensions/PhabBugz/lib/Revision.pm
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/PhabBugz/lib/Revision.pm')
-rw-r--r--extensions/PhabBugz/lib/Revision.pm15
1 files changed, 11 insertions, 4 deletions
diff --git a/extensions/PhabBugz/lib/Revision.pm b/extensions/PhabBugz/lib/Revision.pm
index f3a56a656..e229043e2 100644
--- a/extensions/PhabBugz/lib/Revision.pm
+++ b/extensions/PhabBugz/lib/Revision.pm
@@ -20,6 +20,13 @@ use Bugzilla::Extension::PhabBugz::Util qw(
);
use Types::Standard -all;
+use Type::Utils;
+
+my $EmptyStr = declare "EmptyStr",
+ as Str,
+ where { length($_) == 0 },
+ inline_as { $_[0]->parent->inline_check($_) . " && length($_) == 0" },
+ message { "String is not empty" };
my $SearchResult = Dict[
id => Int,
@@ -35,7 +42,7 @@ my $SearchResult = Dict[
repositoryPHID => Maybe[Str],
status => HashRef,
summary => Str,
- "bugzilla.bug-id" => Int,
+ "bugzilla.bug-id" => Int | $EmptyStr,
],
attachments => Dict[
reviewers => Dict[
@@ -49,8 +56,8 @@ my $SearchResult = Dict[
],
],
subscribers => Dict[
- subscriberPHIDs => ArrayRef[Str],
- subscriberCount => Int,
+ subscriberPHIDs => ArrayRef[Str],
+ subscriberCount => Int,
viewerIsSubscribed => Bool,
],
projects => Dict[ projectPHIDs => ArrayRef[Str] ],
@@ -87,7 +94,7 @@ sub _load {
my $result = request('differential.revision.search', $data);
if (exists $result->{result}{data} && @{ $result->{result}{data} }) {
- return $result->{result}->{data}->[0];
+ $result = $result->{result}->{data}->[0];
}
return $result;