summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Duncan <duncanc@php.net>2019-05-28 20:03:19 +0100
committerCraig Duncan <duncan3dc@php.net>2019-05-30 19:16:31 +0100
commitfacfbf3c9cf36d78c485ea34a2041aa0b91f17ef (patch)
treeacdeeb5feabeb318db5c980241fedbdd64cb0b67
parentbc87424835a488a3b80f5eb61b455c2da1658d9b (diff)
downloadphp-git-facfbf3c9cf36d78c485ea34a2041aa0b91f17ef.tar.gz
Update the DatePeriod read/write handlers
-rw-r--r--ext/date/php_date.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
index 7e04058585..53074067d9 100644
--- a/ext/date/php_date.c
+++ b/ext/date/php_date.c
@@ -660,9 +660,9 @@ static int date_interval_compare_objects(zval *o1, zval *o2);
static zval *date_interval_read_property(zend_object *object, zend_string *member, int type, void **cache_slot, zval *rv);
static zval *date_interval_write_property(zend_object *object, zend_string *member, zval *value, void **cache_slot);
static zval *date_interval_get_property_ptr_ptr(zend_object *object, zend_string *member, int type, void **cache_slot);
-static zval *date_period_read_property(zend_object *object, zend_string *member, int type, void **cache_slot, zval *rv);
-static zval *date_period_write_property(zend_object *object, zend_string *member, zval *value, void **cache_slot);
-static zval *date_period_get_property_ptr_ptr(zend_object *object, zend_string *member, int type, void **cache_slot);
+static zval *date_period_read_property(zend_object *object, zend_string *name, int type, void **cache_slot, zval *rv);
+static zval *date_period_write_property(zend_object *object, zend_string *name, zval *value, void **cache_slot);
+static zval *date_period_get_property_ptr_ptr(zend_object *object, zend_string *name, int type, void **cache_slot);
/* {{{ Module struct */
zend_module_entry date_module_entry = {
@@ -5286,13 +5286,10 @@ static int date_period_is_magic_property(zend_string *name)
static zval *date_period_read_property(zend_object *object, zend_string *name, int type, void **cache_slot, zval *rv)
{
if (type != BP_VAR_IS && type != BP_VAR_R) {
- zend_string *name = zval_get_string(member);
if (date_period_is_magic_property(name)) {
zend_throw_error(NULL, "Retrieval of DatePeriod->%s for modification is unsupported", ZSTR_VAL(name));
- zend_string_release(name);
return &EG(uninitialized_zval);
}
- zend_string_release(name);
}
object->handlers->get_properties(object); /* build properties hash table */
@@ -5304,15 +5301,12 @@ static zval *date_period_read_property(zend_object *object, zend_string *name, i
/* {{{ date_period_write_property */
static zval *date_period_write_property(zend_object *object, zend_string *name, zval *value, void **cache_slot)
{
- zend_string *name = zval_get_string(member);
if (date_period_is_magic_property(name)) {
zend_throw_error(NULL, "Writing to DatePeriod->%s is unsupported", ZSTR_VAL(name));
- zend_string_release(name);
return value;
}
- zend_string_release(name);
- std_object_handlers.write_property(object, member, value, cache_slot);
+ std_object_handlers.write_property(object, name, value, cache_slot);
return value;
}
/* }}} */