うーん、Nokogiriが落ちるよぉ><

特定のURLで特定のXPathを食わせるとNokogiriが落ちる。そのせいでw3m-autopagerizeのサーバごと落ちてしまうから困る。
当面は落ちても再起動させるようなシェルスクリプトを被せておくか。

require 'nokogiri'
require 'open-uri'
require 'kconv'

url = "http://www.yahoo-search.jp/?id=300069&kw=a"
xpath = %{id("resultList")//li}
nokogiri = Nokogiri::HTML.parse(open(url).read.toutf8, nil, 'UTF-8')
tree = nokogiri.xpath(xpath)

これを実行するとこんなエラーがでて落ちる。xml_xpath_context.cはnokogiriのファイルだからおそらくnokogiriのバグかと。assertionがコケるんだからおそらくこのまま実行を続けていってもいい結果にはならんだろうけど。

$ ruby nokogiri-fatal.rb
ruby: xml_xpath_context.c:49: evaluate: Assertion `ctx->node' failed.

とりあえずNokogiriのメーリングリストに入ったから報告しておくか。