From f3d8323a719dd3e734da67a72aca2425b8d0755c Mon Sep 17 00:00:00 2001 From: Christophe Coevoet Date: Tue, 18 Nov 2014 11:18:14 +0100 Subject: [PATCH 1/3] Fixed the json formatting when using JSONC --- src/Composer/Json/JsonFile.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Composer/Json/JsonFile.php b/src/Composer/Json/JsonFile.php index bed35d598..e008ced9d 100644 --- a/src/Composer/Json/JsonFile.php +++ b/src/Composer/Json/JsonFile.php @@ -187,7 +187,7 @@ class JsonFile $json = json_encode($data, $options); // compact brackets to follow recent php versions - if (PHP_VERSION_ID < 50428 || (PHP_VERSION_ID >= 50500 && PHP_VERSION_ID < 50512)) { + if (PHP_VERSION_ID < 50428 || (PHP_VERSION_ID >= 50500 && PHP_VERSION_ID < 50512) || defined('JSON_C_VERSION')) { $json = preg_replace('/\[\s+\]/', '[]', $json); $json = preg_replace('/\{\s+\}/', '{}', $json); } From c571ccafd3daf39d980cc1159c035d6a6df8ddd0 Mon Sep 17 00:00:00 2001 From: Christophe Coevoet Date: Tue, 18 Nov 2014 11:37:26 +0100 Subject: [PATCH 2/3] Restrict the JSONC fix to affected versions --- src/Composer/Json/JsonFile.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Composer/Json/JsonFile.php b/src/Composer/Json/JsonFile.php index e008ced9d..0611075e5 100644 --- a/src/Composer/Json/JsonFile.php +++ b/src/Composer/Json/JsonFile.php @@ -187,7 +187,7 @@ class JsonFile $json = json_encode($data, $options); // compact brackets to follow recent php versions - if (PHP_VERSION_ID < 50428 || (PHP_VERSION_ID >= 50500 && PHP_VERSION_ID < 50512) || defined('JSON_C_VERSION')) { + if (PHP_VERSION_ID < 50428 || (PHP_VERSION_ID >= 50500 && PHP_VERSION_ID < 50512) || (defined('JSON_C_VERSION') && version_compare(php_version('json'), '1.3.6', '<'))) { $json = preg_replace('/\[\s+\]/', '[]', $json); $json = preg_replace('/\{\s+\}/', '{}', $json); } From b0f13e0ab603afe9d3c8baf5c958a41cd5187033 Mon Sep 17 00:00:00 2001 From: Christophe Coevoet Date: Tue, 18 Nov 2014 11:39:47 +0100 Subject: [PATCH 3/3] Fix typo --- src/Composer/Json/JsonFile.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Composer/Json/JsonFile.php b/src/Composer/Json/JsonFile.php index 0611075e5..ceaffaa25 100644 --- a/src/Composer/Json/JsonFile.php +++ b/src/Composer/Json/JsonFile.php @@ -187,7 +187,7 @@ class JsonFile $json = json_encode($data, $options); // compact brackets to follow recent php versions - if (PHP_VERSION_ID < 50428 || (PHP_VERSION_ID >= 50500 && PHP_VERSION_ID < 50512) || (defined('JSON_C_VERSION') && version_compare(php_version('json'), '1.3.6', '<'))) { + if (PHP_VERSION_ID < 50428 || (PHP_VERSION_ID >= 50500 && PHP_VERSION_ID < 50512) || (defined('JSON_C_VERSION') && version_compare(phpversion('json'), '1.3.6', '<'))) { $json = preg_replace('/\[\s+\]/', '[]', $json); $json = preg_replace('/\{\s+\}/', '{}', $json); }