From: Wiebe Cazemier Date: 2010-09-17T04:00:28+09:00 Subject: [ruby-core:32447] [Ruby-Bug#3842][Open] REXML gives NoMethodError when using parentheses in Xpath selection criteria --mimepart_4c9269473e531_eedcd4acc2100ef Content-Type: text/plain Content-Transfer-Encoding: Quoted-printable Content-Disposition: inline Bug #3842: REXML gives NoMethodError when using parentheses in Xpath sele= ction criteria http://redmine.ruby-lang.org/issues/show/3842 Author: Wiebe Cazemier Status: Open, Priority: Normal ruby -v: ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux] When using a selection criterion as follows: xmldoc.elements.each("descendant::node()[(local-name()=3D'link' or local-= name()=3D'a') and @rel=3D'sub']") It gives: /usr/lib/ruby/1.9.1/rexml/xpath_parser.rb:437:in `expr': undefined method= `inject' for true:TrueClass (NoMethodError) But when leaving out the parentheses around two two local-name functions,= it works fine. It also worked fine on Ruby 1.8. ---------------------------------------- http://redmine.ruby-lang.org --mimepart_4c9269473e531_eedcd4acc2100ef Content-Type: application/octet-stream; name=rexmlbug.rb Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=rexmlbug.rb IyEvdXNyL2Jpbi9ydWJ5CgojIGV4YW1wbGUgc2NyaXB0IHRvIHNob3cgYSBi dWcgaW4gUkVYTUwncyB4cGF0aCBwYXJzaW5nIHdoZW4gcGFyZW50aGVzZXMg YXJlIHVzZWQgaW4gc2VsZWN0aW9uIGNyaXRlcmlhLCAKIyBhdCBsZWFzdCBv biBkZXNjZW5kYW50Ojpub2RlKCkKIwojIEF1dGhvcjogd2llYmVAaGFsZmdh YXIubmV0CgpyZXF1aXJlICdyZXhtbC9kb2N1bWVudCcKCmRvYyA9ICIKPGh0 bWw+CiAgPGhlYWQ+CiAgICA8dGl0bGU+dGVzdDwvdGl0bGU+CiAgPC9oZWFk PgogIDxib2R5PgogICAgPHA+CiAgICAgIEEgPGEgcmVsPVwic3ViXCIgaHJl Zj1cIi9cIj5saW5rPC9hPi4KICAgIDwvcD4KICA8L2JvZHk+CjwvaHRtbD4K IgoKeG1sZG9jID0gUkVYTUw6OkRvY3VtZW50Lm5ldyhkb2MpCgpwdXRzICJU aGUgRm9sbG93aW5nIHhwYXRoIGV4cHJlc3Npb25zIHdvcmtzIGZpbmUuLi4i CgojIFdvcmtzIGZpbmUgd2l0aG91dCBwYXJlbnRoZXNlcwp4bWxkb2MuZWxl bWVudHMuZWFjaCgiZGVzY2VuZGFudDo6bm9kZSgpW2xvY2FsLW5hbWUoKT0n bGluaycgb3IgbG9jYWwtbmFtZSgpPSdhJyBhbmQgQHJlbD0nc3ViJ10iKSBk byB8ZWxlbWVudHwKICBwdXRzICJ3cml0aW5nIGVsZW1lbnQ6ICIKICBwdXRz IGVsZW1lbnQudG9fcwogIHB1dHMgIiIKZW5kCgpwdXRzICJUaGUgZm9sbG93 aW5nIHhwYXRoIGV4cHJlc3Npb24gaXMgZ29pbmcgdG8gZmFpbC4uLiIKCiMg VGhpcyBnaXZlcyAiL3Vzci9saWIvcnVieS8xLjkuMS9yZXhtbC94cGF0aF9w YXJzZXIucmI6NDM3OmluIGBleHByJzogdW5kZWZpbmVkIG1ldGhvZCBgaW5q ZWN0JyBmb3IgdHJ1ZTpUcnVlQ2xhc3MgKE5vTWV0aG9kRXJyb3IpIgp4bWxk b2MuZWxlbWVudHMuZWFjaCgiZGVzY2VuZGFudDo6bm9kZSgpWyhsb2NhbC1u YW1lKCk9J2xpbmsnIG9yIGxvY2FsLW5hbWUoKT0nYScpIGFuZCBAcmVsPSdz dWInXSIpIGRvIHxlbGVtZW50fAogIHB1dHMgIndyaXRpbmcgZWxlbWVudDog IgogIHB1dHMgZWxlbWVudC50b19zCiAgcHV0cyAiIgplbmQK --mimepart_4c9269473e531_eedcd4acc2100ef--