mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge mysql.com:/usr/home/bar/mysql-5.1-new.b18201
into mysql.com:/usr/home/bar/mysql-5.1-kt mysql-test/r/xml.result: Auto merged mysql-test/t/xml.test: Auto merged sql/item_xmlfunc.cc: Auto merged
This commit is contained in:
@ -43,7 +43,7 @@ static const char *lex2str(int lex)
|
||||
{
|
||||
switch(lex)
|
||||
{
|
||||
case MY_XML_EOF: return "EOF";
|
||||
case MY_XML_EOF: return "END-OF-INPUT";
|
||||
case MY_XML_STRING: return "STRING";
|
||||
case MY_XML_IDENT: return "IDENT";
|
||||
case MY_XML_CDATA: return "CDATA";
|
||||
@ -195,8 +195,13 @@ static int my_xml_leave(MY_XML_PARSER *p, const char *str, uint slen)
|
||||
if (str && (slen != glen))
|
||||
{
|
||||
mstr(s,str,sizeof(s)-1,slen);
|
||||
mstr(g,e+1,sizeof(g)-1,glen),
|
||||
sprintf(p->errstr,"'</%s>' unexpected ('</%s>' wanted)",s,g);
|
||||
if (glen)
|
||||
{
|
||||
mstr(g,e+1,sizeof(g)-1,glen),
|
||||
sprintf(p->errstr,"'</%s>' unexpected ('</%s>' wanted)",s,g);
|
||||
}
|
||||
else
|
||||
sprintf(p->errstr,"'</%s>' unexpected (END-OF-INPUT wanted)", s);
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
|
||||
@ -247,7 +252,7 @@ int my_xml_parse(MY_XML_PARSER *p,const char *str, uint len)
|
||||
{
|
||||
if (MY_XML_IDENT != (lex=my_xml_scan(p,&a)))
|
||||
{
|
||||
sprintf(p->errstr,"1: %s unexpected (ident wanted)",lex2str(lex));
|
||||
sprintf(p->errstr,"%s unexpected (ident wanted)",lex2str(lex));
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
if (MY_XML_OK != my_xml_leave(p,a.beg,(uint) (a.end-a.beg)))
|
||||
@ -275,7 +280,7 @@ int my_xml_parse(MY_XML_PARSER *p,const char *str, uint len)
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(p->errstr,"3: %s unexpected (ident or '/' wanted)",
|
||||
sprintf(p->errstr,"%s unexpected (ident or '/' wanted)",
|
||||
lex2str(lex));
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
@ -297,7 +302,7 @@ int my_xml_parse(MY_XML_PARSER *p,const char *str, uint len)
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(p->errstr,"4: %s unexpected (ident or string wanted)",
|
||||
sprintf(p->errstr,"%s unexpected (ident or string wanted)",
|
||||
lex2str(lex));
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
@ -325,7 +330,7 @@ gt:
|
||||
{
|
||||
if (lex != MY_XML_QUESTION)
|
||||
{
|
||||
sprintf(p->errstr,"6: %s unexpected ('?' wanted)",lex2str(lex));
|
||||
sprintf(p->errstr,"%s unexpected ('?' wanted)",lex2str(lex));
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
if (MY_XML_OK != my_xml_leave(p,NULL,0))
|
||||
@ -341,7 +346,7 @@ gt:
|
||||
|
||||
if (lex != MY_XML_GT)
|
||||
{
|
||||
sprintf(p->errstr,"5: %s unexpected ('>' wanted)",lex2str(lex));
|
||||
sprintf(p->errstr,"%s unexpected ('>' wanted)",lex2str(lex));
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
}
|
||||
@ -359,6 +364,12 @@ gt:
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (p->attr[0])
|
||||
{
|
||||
sprintf(p->errstr,"unexpected END-OF-INPUT");
|
||||
return MY_XML_ERROR;
|
||||
}
|
||||
return MY_XML_OK;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user