From bd73142bcf2e8088377e382a02793ebbc05af105 Mon Sep 17 00:00:00 2001 From: Fred Condo Date: Fri, 22 Feb 2013 17:39:01 -0800 Subject: [PATCH] BUG: Correct semantic error regarding cURL options in RestfulService cURL options are numeric, and array_merge is destructive of numeric keys. Replace array_merge calls with array union operator, with defaults on right-hand side so that passed options override defaults. --- api/RestfulService.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/RestfulService.php b/api/RestfulService.php index c789d4c84..f1365c93a 100644 --- a/api/RestfulService.php +++ b/api/RestfulService.php @@ -140,7 +140,7 @@ class RestfulService extends ViewableData { $method, $data, array_merge((array)$this->customHeaders, (array)$headers), - array_merge(self::$default_curl_options,$curlOptions), + $curlOptions + self::$default_curl_options, $this->getBasicAuthString() )); @@ -196,7 +196,7 @@ class RestfulService extends ViewableData { $timeout = 5; $sapphireInfo = new SapphireInfo(); $useragent = 'SilverStripe/' . $sapphireInfo->Version(); - $curlOptions = array_merge(self::$default_curl_options, $curlOptions); + $curlOptions = $curlOptions + self::$default_curl_options; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);