@@ -157,7 +157,7 @@ static void xml_call_handler(xml_parser *, zval *, zend_function *, int, zval *,
157
157
static void _xml_xmlchar_zval (const XML_Char * , int , const XML_Char * , zval * );
158
158
static int _xml_xmlcharlen (const XML_Char * );
159
159
static void _xml_add_to_info (xml_parser * parser , const char * name );
160
- inline static zend_string * _xml_decode_tag (xml_parser * parser , const char * tag );
160
+ inline static zend_string * _xml_decode_tag (xml_parser * parser , const XML_Char * tag );
161
161
162
162
void _xml_startElementHandler (void * , const XML_Char * , const XML_Char * * );
163
163
void _xml_endElementHandler (void * , const XML_Char * );
@@ -570,11 +570,11 @@ static void _xml_add_to_info(xml_parser *parser, const char *name)
570
570
/* }}} */
571
571
572
572
/* {{{ _xml_decode_tag() */
573
- static zend_string * _xml_decode_tag (xml_parser * parser , const char * tag )
573
+ static zend_string * _xml_decode_tag (xml_parser * parser , const XML_Char * tag )
574
574
{
575
575
zend_string * str ;
576
576
577
- str = xml_utf8_decode (( const XML_Char * ) tag , strlen (tag ), parser -> target_encoding );
577
+ str = xml_utf8_decode (tag , _xml_xmlcharlen (tag ), parser -> target_encoding );
578
578
579
579
if (parser -> case_folding ) {
580
580
zend_str_toupper (ZSTR_VAL (str ), ZSTR_LEN (str ));
@@ -595,7 +595,7 @@ void _xml_startElementHandler(void *userData, const XML_Char *name, const XML_Ch
595
595
if (parser ) {
596
596
parser -> level ++ ;
597
597
598
- tag_name = _xml_decode_tag (parser , ( const char * ) name );
598
+ tag_name = _xml_decode_tag (parser , name );
599
599
600
600
if (!Z_ISUNDEF (parser -> startElementHandler )) {
601
601
ZVAL_COPY (& args [0 ], & parser -> index );
@@ -605,7 +605,7 @@ void _xml_startElementHandler(void *userData, const XML_Char *name, const XML_Ch
605
605
while (attributes && * attributes ) {
606
606
zval tmp ;
607
607
608
- att = _xml_decode_tag (parser , ( const char * ) attributes [0 ]);
608
+ att = _xml_decode_tag (parser , attributes [0 ]);
609
609
val = xml_utf8_decode (attributes [1 ], strlen ((char * )attributes [1 ]), parser -> target_encoding );
610
610
611
611
ZVAL_STR (& tmp , val );
@@ -642,7 +642,7 @@ void _xml_startElementHandler(void *userData, const XML_Char *name, const XML_Ch
642
642
while (attributes && * attributes ) {
643
643
zval tmp ;
644
644
645
- att = _xml_decode_tag (parser , ( const char * ) attributes [0 ]);
645
+ att = _xml_decode_tag (parser , attributes [0 ]);
646
646
val = xml_utf8_decode (attributes [1 ], strlen ((char * )attributes [1 ]), parser -> target_encoding );
647
647
648
648
ZVAL_STR (& tmp , val );
@@ -679,7 +679,7 @@ void _xml_endElementHandler(void *userData, const XML_Char *name)
679
679
if (parser ) {
680
680
zval retval , args [2 ];
681
681
682
- zend_string * tag_name = _xml_decode_tag (parser , ( const char * ) name );
682
+ zend_string * tag_name = _xml_decode_tag (parser , name );
683
683
684
684
if (!Z_ISUNDEF (parser -> endElementHandler )) {
685
685
ZVAL_COPY (& args [0 ], & parser -> index );
0 commit comments