]> granicus.if.org Git - php/commitdiff
Fix dom class can't be inherited by the internal class
authordreamszhu <dreamsxin@qq.com>
Sun, 1 Jan 2017 09:10:28 +0000 (17:10 +0800)
committerNikita Popov <nikic@php.net>
Sun, 1 Jan 2017 11:20:04 +0000 (12:20 +0100)
ext/dom/php_dom.c

index b6dc791d3d5c948c544fd67162bd045cb8abb4fb..9984356c30a41af8968376642467a5ad02b61c2f 100644 (file)
@@ -1075,7 +1075,7 @@ static dom_object* dom_objects_set_class(zend_class_entry *class_type, zend_bool
        dom_object *intern = ecalloc(1, sizeof(dom_object) + zend_object_properties_size(class_type));
 
        zend_class_entry *base_class = class_type;
-       while (base_class->type != ZEND_INTERNAL_CLASS && base_class->parent != NULL) {
+       while ((base_class->type != ZEND_INTERNAL_CLASS || base_class->info.internal.module->module_number != dom_module_entry.module_number) && base_class->parent != NULL) {
                base_class = base_class->parent;
        }