From 2f84a8d74627cb20cfae1ac4c004af393b8b07de Mon Sep 17 00:00:00 2001 From: Tom Needham Date: Mon, 30 Jul 2012 16:04:09 +0000 Subject: [PATCH] Merge the responses recursively --- lib/api.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/api.php b/lib/api.php index 02c3f77e5c2..757e53226b9 100644 --- a/lib/api.php +++ b/lib/api.php @@ -86,7 +86,6 @@ class OC_API { $finalresponse = array(); $numresponses = count($responses); - // TODO - This is only a temporary merge. If keys match and value is another array we want to compare deeper in the array foreach($responses as $response){ if(is_int($response) && empty($finalresponse)){ $finalresponse = $response; @@ -95,13 +94,12 @@ class OC_API { if(is_array($response)){ // Shipped apps win if(OC_App::isShipped($response['app'])){ - $finalresponse = array_merge($finalresponse, $response); + $finalresponse = array_merge_recursive($finalresponse, $response); } else { - $finalresponse = array_merge($response, $finalresponse); + $finalresponse = array_merge_recursive($response, $finalresponse); } } } - // END TODO return $finalresponse; }