chiark / gitweb /
dgit: Break out api_query_raw
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 23 Jul 2019 14:18:22 +0000 (15:18 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 23 Jul 2019 14:18:22 +0000 (15:18 +0100)
In support of #932570.  No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
dgit

diff --git a/dgit b/dgit
index cde85468cfcad54ec99661f9d0ec0d02c2572c4e..80adf1fdbba1e9f10361aa0e4573b990f901c67b 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -1223,8 +1223,7 @@ sub archive_api_query_cmd ($) {
     return @cmd;
 }
 
-sub api_query ($$;$) {
-    use JSON;
+sub api_query_raw ($$;$) {
     my ($data, $subpath, $ok404) = @_;
     badcfg __ "ftpmasterapi archive query method takes no data part"
        if length $data;
@@ -1240,6 +1239,14 @@ sub api_query ($$;$) {
     return undef if $code eq '404' && $ok404;
     fail f_ "fetch of %s gave HTTP code %s", $url, $code
        unless $url =~ m#^file://# or $code =~ m/^2/;
+    return $json;
+}
+
+sub api_query ($$;$) {
+    my ($data, $subpath, $ok404) = @_;
+    use JSON;
+    my $json = api_query_raw $data, $subpath, $ok404;
+    return undef unless defined $json;
     return decode_json($json);
 }