@@ -663,9 +663,11 @@ void xml_startElementHandler(void *userData, const XML_Char *name, const XML_Cha
663
663
array_init (& tag );
664
664
array_init (& atr );
665
665
666
- xml_add_to_info ( parser , ZSTR_VAL (tag_name ) + parser -> toffset );
666
+ char * skipped_tag_name = SKIP_TAGSTART ( ZSTR_VAL (tag_name ));
667
667
668
- add_assoc_string (& tag , "tag" , SKIP_TAGSTART (ZSTR_VAL (tag_name ))); /* cast to avoid gcc-warning */
668
+ xml_add_to_info (parser , skipped_tag_name );
669
+
670
+ add_assoc_string (& tag , "tag" , skipped_tag_name );
669
671
add_assoc_string (& tag , "type" , "open" );
670
672
add_assoc_long (& tag , "level" , parser -> level );
671
673
@@ -747,12 +749,14 @@ void xml_endElementHandler(void *userData, const XML_Char *name)
747
749
add_assoc_string (zv , "type" , "complete" );
748
750
}
749
751
} else {
750
- xml_add_to_info (parser , ZSTR_VAL (tag_name ) + parser -> toffset );
752
+ char * skipped_tag_name = SKIP_TAGSTART (ZSTR_VAL (tag_name ));
753
+
754
+ xml_add_to_info (parser , skipped_tag_name );
751
755
752
756
zval * data = xml_get_separated_data (parser );
753
757
if (EXPECTED (data )) {
754
758
array_init (& tag );
755
- add_assoc_string (& tag , "tag" , SKIP_TAGSTART ( ZSTR_VAL ( tag_name ))); /* cast to avoid gcc-warning */
759
+ add_assoc_string (& tag , "tag" , skipped_tag_name );
756
760
add_assoc_string (& tag , "type" , "close" );
757
761
add_assoc_long (& tag , "level" , parser -> level );
758
762
zend_hash_next_index_insert (Z_ARRVAL_P (data ), & tag );
0 commit comments