diff options
author | Marcus Boerger <helly@php.net> | 2003-12-28 15:18:05 +0000 |
---|---|---|
committer | Marcus Boerger <helly@php.net> | 2003-12-28 15:18:05 +0000 |
commit | 15964bb35d9c9ec10c2fdcd8fb1cae17b8592c6d (patch) | |
tree | eebddc9b745f0a1b407f2fd5047da1d9c325fcd2 | |
parent | 05c78af8545780e01e7e823464e1a8bfcb1b2988 (diff) | |
download | php-git-15964bb35d9c9ec10c2fdcd8fb1cae17b8592c6d.tar.gz |
Fix order of class_entry member initialization (needed for example for DOM)
# You need to completley rebuild PHP after this patch.
-rw-r--r-- | Zend/zend_API.h | 2 | ||||
-rw-r--r-- | Zend/zend_compile.c | 13 |
2 files changed, 8 insertions, 7 deletions
diff --git a/Zend/zend_API.h b/Zend/zend_API.h index 67818b860a..aab1d359ff 100644 --- a/Zend/zend_API.h +++ b/Zend/zend_API.h @@ -127,7 +127,9 @@ typedef struct _zend_function_entry { class_container.__call = handle_fcall; \ class_container.__get = handle_propget; \ class_container.__set = handle_propset; \ + class_container.parent = NULL; \ class_container.num_interfaces = 0; \ + class_container.interfaces = NULL; \ class_container.get_iterator = NULL; \ class_container.iterator_funcs.funcs = NULL; \ } diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 16f320ef25..639ef3c6d8 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -3565,14 +3565,13 @@ ZEND_API void zend_initialize_class_data(zend_class_entry *ce, zend_bool nullify ce->__set = NULL; ce->__call = NULL; ce->create_object = NULL; + ce->get_iterator = NULL; + ce->iterator_funcs.funcs = NULL; + ce->interface_gets_implemented = NULL; + ce->parent = NULL; + ce->num_interfaces = 0; + ce->interfaces = NULL; } - - ce->parent = NULL; - ce->num_interfaces = 0; - ce->interfaces = NULL; - ce->get_iterator = NULL; - ce->iterator_funcs.funcs = NULL; - ce->interface_gets_implemented = NULL; } |