Browse Source
Revert JSON merges to 5.4
Revert JSON merges to 5.4
This reverts the following merge commits (-m 1):PHP-5.4.5405ebfcd18d372b33c9b36fa17a5fa
17 changed files with 48 additions and 233 deletions
-
5ext/json/JSON_parser.h
-
64ext/json/json.c
-
1ext/json/php_json.h
-
17ext/json/tests/003.phpt
-
16ext/json/tests/004.phpt
-
16ext/json/tests/007.phpt
-
7ext/json/tests/bug43941.phpt
-
6ext/json/tests/bug53946.phpt
-
13ext/json/tests/bug54058.phpt
-
39ext/json/tests/bug61537.phpt
-
10ext/json/tests/bug61978.phpt
-
45ext/json/tests/inf_nan_error.phpt
-
6ext/json/tests/json_encode_basic.phpt
-
4ext/json/tests/pass001.1.phpt
-
4ext/json/tests/pass001.phpt
-
26ext/json/tests/unsupported_type_error.phpt
-
2main/php_version.h
@ -1,39 +0,0 @@ |
|||
--TEST-- |
|||
Bug #61537 (json_encode() incorrectly truncates/discards information) |
|||
--SKIPIF-- |
|||
<?php if (!extension_loaded("json")) print "skip"; ?> |
|||
--FILE-- |
|||
<?php |
|||
$invalid_utf8 = "\x9f"; |
|||
|
|||
var_dump(json_encode($invalid_utf8)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
var_dump(json_encode($invalid_utf8, JSON_PARTIAL_OUTPUT_ON_ERROR)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
echo "\n"; |
|||
|
|||
$invalid_utf8 = "an invalid sequen\xce in the middle of a string"; |
|||
|
|||
var_dump(json_encode($invalid_utf8)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
var_dump(json_encode($invalid_utf8, JSON_PARTIAL_OUTPUT_ON_ERROR)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
?> |
|||
--EXPECTF-- |
|||
bool(false) |
|||
int(5) |
|||
string(56) "Malformed UTF-8 characters, possibly incorrectly encoded" |
|||
string(4) "null" |
|||
int(5) |
|||
string(56) "Malformed UTF-8 characters, possibly incorrectly encoded" |
|||
|
|||
bool(false) |
|||
int(5) |
|||
string(56) "Malformed UTF-8 characters, possibly incorrectly encoded" |
|||
string(4) "null" |
|||
int(5) |
|||
string(56) "Malformed UTF-8 characters, possibly incorrectly encoded" |
|||
@ -1,45 +0,0 @@ |
|||
--TEST-- |
|||
An error is thrown when INF or NaN are encoded |
|||
--SKIPIF-- |
|||
<?php if (!extension_loaded("json")) print "skip"; ?> |
|||
--FILE-- |
|||
<?php |
|||
|
|||
$inf = INF; |
|||
|
|||
var_dump($inf); |
|||
|
|||
var_dump(json_encode($inf)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
var_dump(json_encode($inf, JSON_PARTIAL_OUTPUT_ON_ERROR)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
echo "\n"; |
|||
|
|||
$nan = NAN; |
|||
|
|||
var_dump($nan); |
|||
|
|||
var_dump(json_encode($nan)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
var_dump(json_encode($nan, JSON_PARTIAL_OUTPUT_ON_ERROR)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
?> |
|||
--EXPECTF-- |
|||
float(INF) |
|||
bool(false) |
|||
int(7) |
|||
string(34) "Inf and NaN cannot be JSON encoded" |
|||
string(1) "0" |
|||
int(7) |
|||
string(34) "Inf and NaN cannot be JSON encoded" |
|||
|
|||
float(NAN) |
|||
bool(false) |
|||
int(7) |
|||
string(34) "Inf and NaN cannot be JSON encoded" |
|||
string(1) "0" |
|||
int(7) |
|||
string(34) "Inf and NaN cannot be JSON encoded" |
|||
@ -1,26 +0,0 @@ |
|||
--TEST-- |
|||
An error is thrown when an unsupported type is encoded |
|||
--SKIPIF-- |
|||
<?php if (!extension_loaded("json")) print "skip"; ?> |
|||
--FILE-- |
|||
<?php |
|||
|
|||
$resource = fopen(__FILE__, "r"); |
|||
|
|||
var_dump($resource); |
|||
|
|||
var_dump(json_encode($resource)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
var_dump(json_encode($resource, JSON_PARTIAL_OUTPUT_ON_ERROR)); |
|||
var_dump(json_last_error(), json_last_error_msg()); |
|||
|
|||
?> |
|||
--EXPECTF-- |
|||
resource(5) of type (stream) |
|||
bool(false) |
|||
int(8) |
|||
string(21) "Type is not supported" |
|||
string(4) "null" |
|||
int(8) |
|||
string(21) "Type is not supported" |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue