/* }}} */
/* {{{ date_period_write_property */
-static void date_period_write_property(zval *object, zval *member, zval *value, void **cache_slot)
+static zval *date_period_write_property(zval *object, zval *member, zval *value, void **cache_slot)
{
- zend_throw_error(NULL, "Writing to DatePeriod properties is unsupported");
+ 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;
++ return value;
+ }
+ zend_string_release(name);
+
+ std_object_handlers.write_property(object, member, value, cache_slot);
+ return value;
}
/* }}} */