@@ -636,9 +636,11 @@ void _xml_startElementHandler(void *userData, const XML_Char *name, const XML_Ch
636636 array_init (& tag );
637637 array_init (& atr );
638638
639- _xml_add_to_info ( parser , ZSTR_VAL (tag_name ) + parser -> toffset );
639+ char * skipped_tag_name = SKIP_TAGSTART ( ZSTR_VAL (tag_name ));
640640
641- add_assoc_string (& tag , "tag" , SKIP_TAGSTART (ZSTR_VAL (tag_name ))); /* cast to avoid gcc-warning */
641+ _xml_add_to_info (parser , skipped_tag_name );
642+
643+ add_assoc_string (& tag , "tag" , skipped_tag_name );
642644 add_assoc_string (& tag , "type" , "open" );
643645 add_assoc_long (& tag , "level" , parser -> level );
644646
@@ -707,9 +709,11 @@ void _xml_endElementHandler(void *userData, const XML_Char *name)
707709 } else {
708710 array_init (& tag );
709711
710- _xml_add_to_info (parser , ZSTR_VAL (tag_name ) + parser -> toffset );
712+ char * skipped_tag_name = SKIP_TAGSTART (ZSTR_VAL (tag_name ));
713+
714+ _xml_add_to_info (parser , skipped_tag_name );
711715
712- add_assoc_string (& tag , "tag" , SKIP_TAGSTART ( ZSTR_VAL ( tag_name ))); /* cast to avoid gcc-warning */
716+ add_assoc_string (& tag , "tag" , skipped_tag_name );
713717 add_assoc_string (& tag , "type" , "close" );
714718 add_assoc_long (& tag , "level" , parser -> level );
715719
0 commit comments