枕を欹てて聴く

香炉峰の雪は簾を撥げて看る

正規表現で

追記:
とりあえず対策版だけおいておきます。Gアイコンは表示されません。また、WIDGET = true;にしたときのために一応patternは作っています。これだったらたぶん落ちないんじゃないかな。LDR Full Feed 0.0.13 beta
追記終わり
追記その2:
いまさっきsvnでLDR Full Feed0.0.11(Cacheのオブジェクト化とmicroformats対応を行う前のversion)引っ張り出してきて使ってみたけどやっぱり正規表現のところで落ちた。Gアイコンはやめないといけないかな。
追記終わり
追記その3:
Firefox本体のbugだったようで、2.0.0.14の時には落ちませんでした。
めでたしめでたし。
追記終わり

LDR Full FeedFirefoxごと巻き込んでしょっちゅう落ちるようになった。
どこで落ちるかはわかっていて、Gアイコン表示、および展開可能かどうかの指標であるgm_fullfeed_enableをitemに追加するためにURLを正規表現でチェックするときにに落ちる。

FullFeed.register = function() {
  var description = "\u5168\u6587\u53d6\u5f97\u3067\u304d\u308b\u3088\uff01";
  w.entry_widgets.add('gm_fullfeed_widget', function(feed, item){
    if (cache.pattern.test(item.link) || cache.pattern.test(feed.channel.link)) {
      item.gm_fullfeed_enable = true;
      if(WIDGET){
      return [
        '<img src="'+ICON+'">'
      ].join('');
      }
    }
  }, description);
}

if (cache.pattern.test(item.link) || cache.pattern.test(feed.channel.link))

で落ちる。
このまえまではconst SITE_INFOにたくさん追加すると落ちてたんだけど、WikiからSiteinfoを取り込むのをやめたり、Siteinfo記述量を減らすと落ちない。現在ではwikiのSiteinfoが膨大になって、自分の環境ではconst SITE_INFOにひとつでも追加すると落ちるという不安定極まりない状態になってる。
正規表現があんまり長くなると、結構な処理になるのかな。
それともcache部分を単一のオブジェクトにして、メソッドで操作する形式が負荷が大きいのかな。これは関係ないっぽい
Gアイコンの表示をやめて、展開可能かの判断を、for文(またはforEach関数)で調べる形式にしたら安定はしそうだけどどうしよう。。。難しいところ。

Remove all ads