<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>13107</bug_id>
          
          <creation_ts>2007-03-18 01:55:41 -0700</creation_ts>
          <short_desc>XPath should raise an exception when trying to parse an unknown function</short_desc>
          <delta_ts>2007-03-19 23:14:28 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>XML</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>18467</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-18 01:55:41 -0700</bug_when>
    <thetext>Currently, functions with unknown names or with an incorrect number of arguments are silently replaced with true(). This is very confusing - I&apos;ve been fooled by this several times already when making layout tests to other bugs.

Firefox and Opera do raise exceptions here, so I think we should fix this before shipping XPathEvaluator.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18468</commentid>
    <comment_count>1</comment_count>
      <attachid>13689</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-18 02:02:43 -0700</bug_when>
    <thetext>Created attachment 13689
proposed patch

In Firefox, createExpression doesn&apos;t raise an exception if the number of arguments is wrong,but it does for unknown function names (evaluating the expression does cause an exception to be raised, of course). Since expressions are created to be evaluated, this difference doesn&apos;t look like a serious issue to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18156</commentid>
    <comment_count>2</comment_count>
      <attachid>13689</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-03-19 20:35:12 -0700</bug_when>
    <thetext>Comment on attachment 13689
proposed patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18125</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-19 23:14:28 -0700</bug_when>
    <thetext>Committed revision 20338.
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13689</attachid>
            <date>2007-03-18 02:02:43 -0700</date>
            <delta_ts>2007-03-19 20:35:12 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>13107r1_patch.txt</filename>
            <type>text/plain</type>
            <size>6502</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMjY4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDctMDMtMTggIEFsZXhleSBQcm9za3VyeWFr
b3YgIDxhcEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA3
CisgICAgICAgIFhQYXRoIHNob3VsZCByYWlzZSBhbiBleGNlcHRpb24gd2hlbiB0cnlpbmcgdG8g
cGFyc2UgYW4gdW5rbm93biBmdW5jdGlvbgorCisgICAgICAgICogZmFzdC94cGF0aC9pbnZhbGlk
LWZ1bmN0aW9ucy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QveHBhdGgvaW52
YWxpZC1mdW5jdGlvbnMuaHRtbDogQWRkZWQuCisKIDIwMDctMDMtMTcgIE5pa29sYXMgWmltbWVy
bWFubiAgPHppbW1lcm1hbm5Aa2RlLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2Vp
bmlnLgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC94cGF0aC9pbnZhbGlkLWZ1bmN0aW9ucy1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC94cGF0aC9pbnZhbGlkLWZ1
bmN0aW9ucy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L3hw
YXRoL2ludmFsaWQtZnVuY3Rpb25zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwxMyBAQAorUEFTUyBkb2N1bWVudC5jcmVhdGVFeHByZXNzaW9uKCJmb29iYXIoKSIsIG51bGwp
IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSU5WQUxJRF9FWFBSRVNTSU9OX0VSUjogRE9NIFhQYXRo
IEV4Y2VwdGlvbiA1MS4KK1BBU1MgZG9jdW1lbnQuZXZhbHVhdGUoImZvb2JhcigpIiwgZG9jdW1l
bnQsIG51bGwsIFhQYXRoUmVzdWx0LkFOWV9UWVBFLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IElOVkFMSURfRVhQUkVTU0lPTl9FUlI6IERPTSBYUGF0aCBFeGNlcHRpb24gNTEuCitQQVNT
IGRvY3VtZW50LmNyZWF0ZUV4cHJlc3Npb24oInBvc2l0aW9uKC8vZGl2KSIsIG51bGwpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogSU5WQUxJRF9FWFBSRVNTSU9OX0VSUjogRE9NIFhQYXRoIEV4Y2Vw
dGlvbiA1MS4KK1BBU1MgZG9jdW1lbnQuZXZhbHVhdGUoInBvc2l0aW9uKC8vZGl2KSIsIGRvY3Vt
ZW50LCBudWxsLCBYUGF0aFJlc3VsdC5BTllfVFlQRSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBJTlZBTElEX0VYUFJFU1NJT05fRVJSOiBET00gWFBhdGggRXhjZXB0aW9uIDUxLgorUEFT
UyBkb2N1bWVudC5jcmVhdGVFeHByZXNzaW9uKCJjZWlsaW5nKDEsMikiLCBudWxsKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IElOVkFMSURfRVhQUkVTU0lPTl9FUlI6IERPTSBYUGF0aCBFeGNlcHRp
b24gNTEuCitQQVNTIGRvY3VtZW50LmV2YWx1YXRlKCJjZWlsaW5nKDEsMikiLCBkb2N1bWVudCwg
bnVsbCwgWFBhdGhSZXN1bHQuQU5ZX1RZUEUsIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
SU5WQUxJRF9FWFBSRVNTSU9OX0VSUjogRE9NIFhQYXRoIEV4Y2VwdGlvbiA1MS4KK1BBU1MgZG9j
dW1lbnQuY3JlYXRlRXhwcmVzc2lvbigiY2VpbGluZygxLDIpIiwgbnVsbCkuZXZhbHVhdGUoZG9j
dW1lbnQsIFhQYXRoUmVzdWx0LkFOWV9UWVBFLCBudWxsKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IElOVkFMSURfRVhQUkVTU0lPTl9FUlI6IERPTSBYUGF0aCBFeGNlcHRpb24gNTEuCitQQVNTIGRv
Y3VtZW50LmNyZWF0ZUV4cHJlc3Npb24oImJvb2xlYW4oKSIsIG51bGwpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogSU5WQUxJRF9FWFBSRVNTSU9OX0VSUjogRE9NIFhQYXRoIEV4Y2VwdGlvbiA1MS4K
K1BBU1MgZG9jdW1lbnQuZXZhbHVhdGUoImJvb2xlYW4oKSIsIGRvY3VtZW50LCBudWxsLCBYUGF0
aFJlc3VsdC5BTllfVFlQRSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJTlZBTElEX0VY
UFJFU1NJT05fRVJSOiBET00gWFBhdGggRXhjZXB0aW9uIDUxLgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKClByb3BlcnR5IGNoYW5nZXMgb246IExh
eW91dFRlc3RzL2Zhc3QveHBhdGgvaW52YWxpZC1mdW5jdGlvbnMtZXhwZWN0ZWQudHh0Cl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTmFtZTogc3ZuOm1pbWUtdHlwZQogICArIHRleHQvcGxhaW4KTmFtZTogc3ZuOmVvbC1z
dHlsZQogICArIG5hdGl2ZQoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QveHBhdGgvaW52YWxpZC1m
dW5jdGlvbnMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3hwYXRoL2ludmFs
aWQtZnVuY3Rpb25zLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L3hwYXRo
L2ludmFsaWQtZnVuY3Rpb25zLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjkgQEAKKzwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhl
YWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0
LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisK
KzxzY3JpcHQ+CisgICAgc2hvdWxkVGhyb3coJ2RvY3VtZW50LmNyZWF0ZUV4cHJlc3Npb24oImZv
b2JhcigpIiwgbnVsbCknKTsKKyAgICBzaG91bGRUaHJvdygnZG9jdW1lbnQuZXZhbHVhdGUoImZv
b2JhcigpIiwgZG9jdW1lbnQsIG51bGwsIFhQYXRoUmVzdWx0LkFOWV9UWVBFLCBudWxsKScpOwor
CisgICAgc2hvdWxkVGhyb3coJ2RvY3VtZW50LmNyZWF0ZUV4cHJlc3Npb24oInBvc2l0aW9uKC8v
ZGl2KSIsIG51bGwpJyk7CisgICAgc2hvdWxkVGhyb3coJ2RvY3VtZW50LmV2YWx1YXRlKCJwb3Np
dGlvbigvL2RpdikiLCBkb2N1bWVudCwgbnVsbCwgWFBhdGhSZXN1bHQuQU5ZX1RZUEUsIG51bGwp
Jyk7CisKKyAgICBzaG91bGRUaHJvdygnZG9jdW1lbnQuY3JlYXRlRXhwcmVzc2lvbigiY2VpbGlu
ZygxLDIpIiwgbnVsbCknKTsKKyAgICBzaG91bGRUaHJvdygnZG9jdW1lbnQuZXZhbHVhdGUoImNl
aWxpbmcoMSwyKSIsIGRvY3VtZW50LCBudWxsLCBYUGF0aFJlc3VsdC5BTllfVFlQRSwgbnVsbCkn
KTsKKyAgICBzaG91bGRUaHJvdygnZG9jdW1lbnQuY3JlYXRlRXhwcmVzc2lvbigiY2VpbGluZygx
LDIpIiwgbnVsbCkuZXZhbHVhdGUoZG9jdW1lbnQsIFhQYXRoUmVzdWx0LkFOWV9UWVBFLCBudWxs
KScpOworCisgICAgc2hvdWxkVGhyb3coJ2RvY3VtZW50LmNyZWF0ZUV4cHJlc3Npb24oImJvb2xl
YW4oKSIsIG51bGwpJyk7CisgICAgc2hvdWxkVGhyb3coJ2RvY3VtZW50LmV2YWx1YXRlKCJib29s
ZWFuKCkiLCBkb2N1bWVudCwgbnVsbCwgWFBhdGhSZXN1bHQuQU5ZX1RZUEUsIG51bGwpJyk7CisK
KyAgICB2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L3hwYXRoL2lu
dmFsaWQtZnVuY3Rpb25zLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46bWltZS10eXBlCiAgICsg
dGV4dC9odG1sCgpJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMjY4KQorKysgV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtp
bmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAwNy0wMy0xOCAgQWxleGV5IFByb3NrdXJ5YWtv
diAgPGFwQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMxMDcK
KyAgICAgICAgWFBhdGggc2hvdWxkIHJhaXNlIGFuIGV4Y2VwdGlvbiB3aGVuIHRyeWluZyB0byBw
YXJzZSBhbiB1bmtub3duIGZ1bmN0aW9uCisKKyAgICAgICAgKiB4bWwvWFBhdGhGdW5jdGlvbnMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6WFBhdGg6OmNyZWF0ZUZ1bmN0aW9uKTogUmV0dXJuIDAg
aWYgdGhlIGZ1bmN0aW9uIGNvdWxkbid0IGJlIGNyZWF0ZWQuCisgICAgICAgICogeG1sL1hQYXRo
R3JhbW1hci55OiBIYW5kbGUgbnVsbHMgcmV0dXJuZWQgZnJvbSBjcmVhdGVGdW5jdGlvbigpLgor
CiAyMDA3LTAzLTE3ICBEYXZpZCBIeWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBN
YWtlIG9ubG9hZCBkbyBhbiBleHBsaWNpdCBwYWludCB3aGVuIGEgdG9wLWxldmVsIGRvY3VtZW50
IGlzIHJlYWR5ICh0byBlbnN1cmUgdGhhdCBhIGZpcnN0IHBhaW50IGFsd2F5cwpJbmRleDogV2Vi
Q29yZS94bWwvWFBhdGhGdW5jdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUveG1sL1hQ
YXRoRnVuY3Rpb25zLmNwcAkocmV2aXNpb24gMjAyNjgpCisrKyBXZWJDb3JlL3htbC9YUGF0aEZ1
bmN0aW9ucy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY1OCwxNCArNjU4LDggQEAgRnVuY3Rpb24q
IGNyZWF0ZUZ1bmN0aW9uKGNvbnN0IFN0cmluZyYgbgogICAgIEhhc2hNYXA8U3RyaW5nLCBGdW5j
dGlvblJlYz46Oml0ZXJhdG9yIGZ1bmN0aW9uTWFwSXRlciA9IGZ1bmN0aW9uTWFwLT5maW5kKG5h
bWUpOwogICAgIEZ1bmN0aW9uUmVjKiBmdW5jdGlvblJlYyA9IDA7CiAKLSAgICBpZiAoZnVuY3Rp
b25NYXBJdGVyID09IGZ1bmN0aW9uTWFwLT5lbmQoKSB8fCAhKGZ1bmN0aW9uUmVjID0gJmZ1bmN0
aW9uTWFwSXRlci0+c2Vjb25kKS0+YXJncy5jb250YWlucyhhcmdzLnNpemUoKSkpIHsKLSAgICAg
ICAgZGVsZXRlQWxsVmFsdWVzKGFyZ3MpOwotCi0gICAgICAgIC8vIFJldHVybiBhIGR1bW15IGZ1
bmN0aW9uIGluc3RlYWQgb2YgMC4KLSAgICAgICAgRnVuY3Rpb24qIGZ1bmNUcnVlID0gZnVuY3Rp
b25NYXAtPmdldCgidHJ1ZSIpLmZhY3RvcnlGbigpOwotICAgICAgICBmdW5jVHJ1ZS0+c2V0TmFt
ZSgidHJ1ZSIpOwotICAgICAgICByZXR1cm4gZnVuY1RydWU7Ci0gICAgfQorICAgIGlmIChmdW5j
dGlvbk1hcEl0ZXIgPT0gZnVuY3Rpb25NYXAtPmVuZCgpIHx8ICEoZnVuY3Rpb25SZWMgPSAmZnVu
Y3Rpb25NYXBJdGVyLT5zZWNvbmQpLT5hcmdzLmNvbnRhaW5zKGFyZ3Muc2l6ZSgpKSkKKyAgICAg
ICAgcmV0dXJuIDA7CiAKICAgICBGdW5jdGlvbiogZnVuY3Rpb24gPSBmdW5jdGlvblJlYy0+ZmFj
dG9yeUZuKCk7CiAgICAgZnVuY3Rpb24tPnNldEFyZ3VtZW50cyhhcmdzKTsKSW5kZXg6IFdlYkNv
cmUveG1sL1hQYXRoR3JhbW1hci55Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUveG1sL1hQYXRoR3Jh
bW1hci55CShyZXZpc2lvbiAyMDI2OCkKKysrIFdlYkNvcmUveG1sL1hQYXRoR3JhbW1hci55CSh3
b3JraW5nIGNvcHkpCkBAIC0zNjUsNiArMzY1LDggQEAgRnVuY3Rpb25DYWxsOgogICAgIEZVTkNU
SU9OTkFNRSAnKCcgJyknCiAgICAgewogICAgICAgICAkJCA9IGNyZWF0ZUZ1bmN0aW9uKCokMSk7
CisgICAgICAgIGlmICghJCQpCisgICAgICAgICAgICBZWUFCT1JUOwogICAgICAgICBQQVJTRVIt
PmRlbGV0ZVN0cmluZygkMSk7CiAgICAgICAgIFBBUlNFUi0+cmVnaXN0ZXJQYXJzZU5vZGUoJCQp
OwogICAgIH0KQEAgLTM3Miw2ICszNzQsOCBAQCBGdW5jdGlvbkNhbGw6CiAgICAgRlVOQ1RJT05O
QU1FICcoJyBBcmd1bWVudExpc3QgJyknCiAgICAgewogICAgICAgICAkJCA9IGNyZWF0ZUZ1bmN0
aW9uKCokMSwgKiQzKTsKKyAgICAgICAgaWYgKCEkJCkKKyAgICAgICAgICAgIFlZQUJPUlQ7CiAg
ICAgICAgIFBBUlNFUi0+ZGVsZXRlU3RyaW5nKCQxKTsKICAgICAgICAgUEFSU0VSLT5kZWxldGVF
eHByZXNzaW9uVmVjdG9yKCQzKTsKICAgICAgICAgUEFSU0VSLT5yZWdpc3RlclBhcnNlTm9kZSgk
JCk7Cg==
</data>
<flag name="review"
          id="5444"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>