]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 529223: The JSON-RPC interface was not working at all with JSON-RPC 1.0, because...
authormkanat%bugzilla.org <>
Wed, 18 Nov 2009 07:09:49 +0000 (07:09 +0000)
committermkanat%bugzilla.org <>
Wed, 18 Nov 2009 07:09:49 +0000 (07:09 +0000)
Patch by Max Kanat-Alexander <mkanat@bugzilla.org> r=dkl, a=mkanat

Bugzilla/WebService/Server/JSONRPC.pm

index 919370a2a23b27313048c57bd2e9b94579ce0c45..16f9ab5b5d371e94b7aa34c42affe935db27d833 100644 (file)
@@ -114,8 +114,10 @@ sub _argument_type_check {
 
     # JSON-RPC 1.0 requires all parameters to be passed as an array, so
     # we just pull out the first item and assume it's an object.
+    my $params_is_array;
     if (ref $params eq 'ARRAY') {
         $params = $params->[0];
+        $params_is_array = 1;
     }
 
     taint_data($params);
@@ -151,6 +153,10 @@ sub _argument_type_check {
     eval "package $new_class;$isa_string;";
     bless $self, $new_class;
 
+    if ($params_is_array) {
+        $params = [$params];
+    }
+
     return $params;
 }