]> granicus.if.org Git - php/commitdiff
Replace json.precision with serialize_precision
authorJakub Zelenka <bukka@php.net>
Thu, 23 Jun 2016 19:13:49 +0000 (20:13 +0100)
committerJakub Zelenka <bukka@php.net>
Sun, 26 Jun 2016 12:26:43 +0000 (13:26 +0100)
ext/json/json.c
ext/json/json_encoder.c
ext/json/php_json.h

index 0cfffe8b66679e0803e79a3d86486e9b95e166ca..d3c6111d4df264870abc994abecdb0710f181c10 100644 (file)
@@ -93,31 +93,6 @@ static const zend_function_entry json_serializable_interface[] = {
 };
 /* }}} */
 
-
-/* {{{ PHP_INI_MH
- */
-static PHP_INI_MH(OnSetJsonPrecision)
-{
-       zend_long i;
-
-       ZEND_ATOL(i, ZSTR_VAL(new_value));
-       if (i >= -1) {
-               JSON_G(precision) = i;
-               return SUCCESS;
-       } else {
-               return FAILURE;
-       }
-}
-/* }}} */
-
-
-/* {{{ PHP_INI
- */
-PHP_INI_BEGIN()
-STD_PHP_INI_ENTRY("json.precision", "-1",  PHP_INI_ALL, OnSetJsonPrecision, precision, zend_json_globals, json_globals)
-PHP_INI_END()
-/* }}} */
-
 /* Register constant for options and errors */
 #define PHP_JSON_REGISTER_CONSTANT(_name, _value) \
        REGISTER_LONG_CONSTANT(_name,  _value, CONST_CS | CONST_PERSISTENT);
@@ -127,8 +102,6 @@ static PHP_MINIT_FUNCTION(json)
 {
        zend_class_entry ce;
 
-       REGISTER_INI_ENTRIES();
-
        INIT_CLASS_ENTRY(ce, "JsonSerializable", json_serializable_interface);
        php_json_serializable_ce = zend_register_internal_interface(&ce);
 
@@ -180,16 +153,6 @@ static PHP_GINIT_FUNCTION(json)
 }
 /* }}} */
 
-/* {{{ PHP_MSHUTDOWN_FUNCTION
-*/
-static PHP_MSHUTDOWN_FUNCTION(json)
-{
-       UNREGISTER_INI_ENTRIES();
-
-       return SUCCESS;
-}
-/* }}} */
-
 
 /* {{{ json_module_entry
  */
@@ -198,7 +161,7 @@ zend_module_entry json_module_entry = {
        "json",
        json_functions,
        PHP_MINIT(json),
-       PHP_MSHUTDOWN(json),
+       NULL,
        NULL,
        NULL,
        PHP_MINFO(json),
index 48d082a031769fa4a9705bf7ffcbee155d091952..7720393c3689d82f273d902ed416f094bb62ec5c 100644 (file)
@@ -105,7 +105,7 @@ static inline void php_json_encode_double(smart_str *buf, double d, int options)
        size_t len;
        char num[PHP_JSON_DOUBLE_MAX_LENGTH];
 
-       php_gcvt(d, (int)JSON_G(precision), '.', 'e', num);
+       php_gcvt(d, (int)PG(serialize_precision), '.', 'e', num);
        len = strlen(num);
        if (options & PHP_JSON_PRESERVE_ZERO_FRACTION && strchr(num, '.') == NULL && len < PHP_JSON_DOUBLE_MAX_LENGTH - 2) {
                num[len++] = '.';
index 2bf1c68eb449edfb4e69e129a81e81ae856b60f7..d1fabd1e6b60af5a22c2e2353df618e77d74be51 100644 (file)
@@ -81,7 +81,6 @@ typedef enum {
 #define PHP_JSON_PARSER_DEFAULT_DEPTH 512
 
 ZEND_BEGIN_MODULE_GLOBALS(json)
-       zend_long precision;
        int encoder_depth;
        int encode_max_depth;
        php_json_error_code error_code;