@@ -802,7 +802,7 @@ PHP_METHOD(Dom_Element, removeAttributeNode)
802802Modern spec URL: https://dom.spec.whatwg.org/#concept-getelementsbytagname
803803Since:
804804*/
805- static void dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAMETERS , bool modern )
805+ static void dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAMETERS , zend_class_entry * iter_ce )
806806{
807807 dom_object * intern , * namednode ;
808808 zend_string * name ;
@@ -818,23 +818,19 @@ static void dom_element_get_elements_by_tag_name(INTERNAL_FUNCTION_PARAMETERS, b
818818
819819 DOM_GET_THIS_INTERN (intern );
820820
821- if (modern ) {
822- php_dom_create_iterator (return_value , DOM_HTMLCOLLECTION , true);
823- } else {
824- php_dom_create_iterator (return_value , DOM_NODELIST , false);
825- }
821+ object_init_ex (return_value , iter_ce );
826822 namednode = Z_DOMOBJ_P (return_value );
827823 dom_namednode_iter (intern , 0 , namednode , NULL , name , NULL );
828824}
829825
830826PHP_METHOD (DOMElement , getElementsByTagName )
831827{
832- dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , false );
828+ dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_nodelist_class_entry );
833829}
834830
835831PHP_METHOD (Dom_Element , getElementsByTagName )
836832{
837- dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , true );
833+ dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_html_collection_class_entry );
838834}
839835/* }}} end dom_element_get_elements_by_tag_name */
840836
@@ -1229,7 +1225,7 @@ PHP_METHOD(Dom_Element, setAttributeNodeNS)
12291225Modern spec URL: https://dom.spec.whatwg.org/#concept-getelementsbytagnamens
12301226Since: DOM Level 2
12311227*/
1232- static void dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAMETERS , bool modern )
1228+ static void dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAMETERS , zend_class_entry * iter_ce )
12331229{
12341230 dom_object * intern , * namednode ;
12351231 zend_string * uri , * name ;
@@ -1254,23 +1250,19 @@ static void dom_element_get_elements_by_tag_name_ns(INTERNAL_FUNCTION_PARAMETERS
12541250
12551251 DOM_GET_THIS_INTERN (intern );
12561252
1257- if (modern ) {
1258- php_dom_create_iterator (return_value , DOM_HTMLCOLLECTION , true);
1259- } else {
1260- php_dom_create_iterator (return_value , DOM_NODELIST , false);
1261- }
1253+ object_init_ex (return_value , iter_ce );
12621254 namednode = Z_DOMOBJ_P (return_value );
12631255 dom_namednode_iter (intern , 0 , namednode , NULL , name , uri );
12641256}
12651257
12661258PHP_METHOD (DOMElement , getElementsByTagNameNS )
12671259{
1268- dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , false );
1260+ dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_nodelist_class_entry );
12691261}
12701262
12711263PHP_METHOD (Dom_Element , getElementsByTagNameNS )
12721264{
1273- dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , true );
1265+ dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_html_collection_class_entry );
12741266}
12751267/* }}} end dom_element_get_elements_by_tag_name_ns */
12761268
0 commit comments