summaryrefslogtreecommitdiff
path: root/ext/json/json_encoder.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2016-06-20 22:42:18 +0300
committerDmitry Stogov <dmitry@zend.com>2016-06-20 22:42:18 +0300
commit1af449f7efdf4eef211dc6ce3ecf06030ddca758 (patch)
tree146b199fa4969dd0030162409a9000caaf37eb03 /ext/json/json_encoder.c
parent72376dc3d20d564082367d170fab579393baf1ab (diff)
parent89533083aef2e905e44822db227e1d0cd14952e7 (diff)
downloadphp-git-1af449f7efdf4eef211dc6ce3ecf06030ddca758.tar.gz
Merge branch 'master' into zend_signals
* master: Improved support for zend-signals. Use empty keys instead of _empty_ in json decoding update NEWS Fix bug #71936 (Segmentation fault destroying HTTP_RAW_POST_DATA)
Diffstat (limited to 'ext/json/json_encoder.c')
-rw-r--r--ext/json/json_encoder.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/json/json_encoder.c b/ext/json/json_encoder.c
index 62df102847..f944b888c7 100644
--- a/ext/json/json_encoder.c
+++ b/ext/json/json_encoder.c
@@ -169,7 +169,7 @@ static void php_json_encode_array(smart_str *buf, zval *val, int options) /* {{{
php_json_encode(buf, data, options);
} else if (r == PHP_JSON_OUTPUT_OBJECT) {
if (key) {
- if (ZSTR_VAL(key)[0] == '\0' && Z_TYPE_P(val) == IS_OBJECT) {
+ if (ZSTR_VAL(key)[0] == '\0' && ZSTR_LEN(key) > 0 && Z_TYPE_P(val) == IS_OBJECT) {
/* Skip protected and private members. */
if (tmp_ht && ZEND_HASH_APPLY_PROTECTION(tmp_ht)) {
ZEND_HASH_DEC_APPLY_COUNT(tmp_ht);