diff options
author | Dmitry Stogov <dmitry@zend.com> | 2018-03-14 14:01:45 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2018-03-14 14:01:45 +0300 |
commit | 1af60a2a7127cd8a366f614b43566123c1dcc80a (patch) | |
tree | 303bf4026ad283e43159dd699fb6c67bd484b3d0 /Zend | |
parent | 12baec3dfa10a4ae87d90b0c785403d5b2303230 (diff) | |
download | php-git-1af60a2a7127cd8a366f614b43566123c1dcc80a.tar.gz |
Keep initialized object_handlers structures in read-only memory.
Diffstat (limited to 'Zend')
-rw-r--r-- | Zend/zend_iterators.c | 2 | ||||
-rw-r--r-- | Zend/zend_object_handlers.c | 2 | ||||
-rw-r--r-- | Zend/zend_object_handlers.h | 2 | ||||
-rw-r--r-- | Zend/zend_objects_API.c | 2 | ||||
-rw-r--r-- | Zend/zend_objects_API.h | 2 |
5 files changed, 5 insertions, 5 deletions
diff --git a/Zend/zend_iterators.c b/Zend/zend_iterators.c index 8ee376b06c..7a8517edc9 100644 --- a/Zend/zend_iterators.c +++ b/Zend/zend_iterators.c @@ -27,7 +27,7 @@ static zend_class_entry zend_iterator_class_entry; static void iter_wrapper_free(zend_object *object); static void iter_wrapper_dtor(zend_object *object); -static zend_object_handlers iterator_object_handlers = { +static const zend_object_handlers iterator_object_handlers = { 0, iter_wrapper_free, iter_wrapper_dtor, diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c index e8a8a54325..0979206326 100644 --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@ -1733,7 +1733,7 @@ int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **f } /* }}} */ -ZEND_API zend_object_handlers std_object_handlers = { +ZEND_API const zend_object_handlers std_object_handlers = { 0, /* offset */ zend_object_std_dtor, /* free_obj */ diff --git a/Zend/zend_object_handlers.h b/Zend/zend_object_handlers.h index 393322667c..4da62e524f 100644 --- a/Zend/zend_object_handlers.h +++ b/Zend/zend_object_handlers.h @@ -165,7 +165,7 @@ struct _zend_object_handlers { }; BEGIN_EXTERN_C() -extern ZEND_API zend_object_handlers std_object_handlers; +extern const ZEND_API zend_object_handlers std_object_handlers; #define zend_get_function_root_class(fbc) \ ((fbc)->common.prototype ? (fbc)->common.prototype->common.scope : (fbc)->common.scope) diff --git a/Zend/zend_objects_API.c b/Zend/zend_objects_API.c index 3e0baaa691..a2de370b49 100644 --- a/Zend/zend_objects_API.c +++ b/Zend/zend_objects_API.c @@ -197,7 +197,7 @@ ZEND_API void ZEND_FASTCALL zend_objects_store_del(zend_object *object) /* {{{ * } /* }}} */ -ZEND_API zend_object_handlers* ZEND_FASTCALL zend_get_std_object_handlers(void) +ZEND_API const zend_object_handlers* ZEND_FASTCALL zend_get_std_object_handlers(void) { return &std_object_handlers; } diff --git a/Zend/zend_objects_API.h b/Zend/zend_objects_API.h index 5a9e3a5041..2ebaa74360 100644 --- a/Zend/zend_objects_API.h +++ b/Zend/zend_objects_API.h @@ -67,7 +67,7 @@ static zend_always_inline void zend_object_store_ctor_failed(zend_object *obj) #define ZEND_OBJECTS_STORE_HANDLERS 0, zend_object_std_dtor, zend_objects_destroy_object, zend_objects_clone_obj -ZEND_API zend_object_handlers * ZEND_FASTCALL zend_get_std_object_handlers(void); +ZEND_API const zend_object_handlers * ZEND_FASTCALL zend_get_std_object_handlers(void); END_EXTERN_C() static zend_always_inline void zend_object_release(zend_object *obj) |