読者です 読者をやめる 読者になる 読者になる

遥かへのスピードランナー

シリコンバレーでAndroidアプリの開発してます。コンピュータービジョン・3D・アルゴリズム界隈にもたまに出現します。

FireMobileSimulator 0.1.1をリリースしました

MobileSimulator Mobile Firefox IT

FireMobileSimulator0.1.1をリリースしました。

修正点は以下です。

  • ページをブックマーク時にブックマークマネージャが開かなくなるバグを修正

Array.prototypeに関数を追加したのが原因でFirefox本体でエラーを引き起こしていたようです。
Firefox本体のソースを引用すると、
[browser.jsより]

  _blockedCommands: ["cmd_close", "cmd_closeWindow"],
  _blockCommands: function SU__blockCommands() {
    for each(var key in this._blockedCommands) {
      var elt = this._element(key);

このfor eachで配列を回しているところに追加した関数オブジェクトも列挙されてしまっていました。
id:amachangが指摘するところの「for in は配列走査のための記法ではない」を見事にFirefoxはやってくれていたようです。
でも、こういった組み込みプロトタイプの書き換えは、オブジェクトを利用する側で書き換えられていることを配慮した作りにするのではなく、書き換えないように配慮するのが通常みたいですね。勉強不足でした

aidesさん、ご報告ありがとうございました!