diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2020-03-31 12:17:32 +0200 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-03-31 14:37:49 +0200 |
commit | 8fd7f02ea4cd595a792ef37e558d357d97bceefa (patch) | |
tree | a4684263d41cf407f5cffb725fe319bbc05da75c /Zend/zend_builtin_functions.c | |
parent | 36935e42eac054a422b7edade69923db7727f268 (diff) | |
download | php-git-8fd7f02ea4cd595a792ef37e558d357d97bceefa.tar.gz |
Make cast_object handler required
Avoid subtle differences in behavior depending on whether the
handler is absent or returns FAILURE.
If you previously set cast_object to NULL, create a handler that
always returns FAILURE instead.
Diffstat (limited to 'Zend/zend_builtin_functions.c')
-rw-r--r-- | Zend/zend_builtin_functions.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c index 87c40acf4f..f00996619a 100644 --- a/Zend/zend_builtin_functions.c +++ b/Zend/zend_builtin_functions.c @@ -664,11 +664,9 @@ ZEND_FUNCTION(define) } break; case IS_OBJECT: - if (Z_OBJ_HT_P(val)->cast_object) { - if (Z_OBJ_HT_P(val)->cast_object(Z_OBJ_P(val), &val_free, IS_STRING) == SUCCESS) { - val = &val_free; - break; - } + if (Z_OBJ_HT_P(val)->cast_object(Z_OBJ_P(val), &val_free, IS_STRING) == SUCCESS) { + val = &val_free; + break; } /* no break */ default: |