Commit 187ff695 authored by unknown's avatar unknown
Browse files

Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.1-new

into  mysql.com:/usr/home/bar/mysql-5.1-new.b18172

parents 0cfbdc4e 64dc3289
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -546,7 +546,7 @@ select extractvalue('<a>a<b>B</b></a>','a|/b');
extractvalue('<a>a<b>B</b></a>','a|/b')
a
select extractvalue('<a>A</a>','/<a>');
ERROR HY000: XPATH syntax error: '>'
ERROR HY000: XPATH syntax error: '<a>'
select extractvalue('<a><b>b</b><b!>b!</b!></a>','//b!');
ERROR HY000: XPATH syntax error: '!'
select extractvalue('<a>A<b>B<c>C</c></b></a>','/a/descendant::*');
@@ -613,3 +613,5 @@ select extractValue('<e>1</e>','position()');
ERROR HY000: XPATH syntax error: ''
select extractValue('<e>1</e>','last()');
ERROR HY000: XPATH syntax error: ''
select extractValue('<e><a>1</a></e>','/e/');
ERROR HY000: XPATH syntax error: ''
+9 −0
Original line number Diff line number Diff line
@@ -286,3 +286,12 @@ select extractvalue('<a>Jack</a>' collate latin1_bin,'/a[contains(../a,"j")]');
select extractValue('<e>1</e>','position()');
--error 1105
select extractValue('<e>1</e>','last()');


#
# Bug #18172 XML: Extractvalue() accepts mallformed
# XPath without a XPath syntax error
#
--error 1105
select extractValue('<e><a>1</a></e>','/e/');
+2 −4
Original line number Diff line number Diff line
@@ -1561,10 +1561,8 @@ static int my_xpath_parse_AbsoluteLocationPath(MY_XPATH *xpath)
    return my_xpath_parse_RelativeLocationPath(xpath);
  }

  if (my_xpath_parse_RelativeLocationPath(xpath))
    return 1;

  return 1;
  return my_xpath_parse_term(xpath, MY_XPATH_LEX_EOF) ||
         my_xpath_parse_RelativeLocationPath(xpath);
}