1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Bug#20795: extractvalue() won't accept names containing a dot (.)

Dot character was not considered as a valid identifier body character.
This commit is contained in:
bar@mysql.com/bar.intranet.mysql.r18.ru
2006-07-25 18:46:43 +05:00
parent dbaba24c5b
commit bc0c69ce7e
5 changed files with 46 additions and 33 deletions

View File

@@ -159,7 +159,7 @@ static int my_xml_enter(MY_XML_PARSER *st, const char *str, uint len)
}
if (st->attrend > st->attr)
{
st->attrend[0]='.';
st->attrend[0]= '/';
st->attrend++;
}
memcpy(st->attrend,str,len);
@@ -188,9 +188,9 @@ static int my_xml_leave(MY_XML_PARSER *p, const char *str, uint slen)
char g[32];
int rc;
/* Find previous '.' or beginning */
for( e=p->attrend; (e>p->attr) && (e[0] != '.') ; e--);
glen = (uint) ((e[0] == '.') ? (p->attrend-e-1) : p->attrend-e);
/* Find previous '/' or beginning */
for( e=p->attrend; (e>p->attr) && (e[0] != '/') ; e--);
glen = (uint) ((e[0] == '/') ? (p->attrend-e-1) : p->attrend-e);
if (str && (slen != glen))
{