この日記はMozillaのプロダクトへの貢献者としての私の成果を中心に、気になったバグやWeb界隈の話題について書いていますが、 断り書きがある場合を除き、いかなる団体のオフィシャルな見解ではありません。あくまでも個人的なものです。 Mozilla Foundation、Mozilla Corporation、及び関連企業の公式情報ではないことに注意してください。

現在、XHTML 1.0 (もどき)から、HTML5なコンテンツに修正中です。古い日記は修正が完了していませんので表示が崩れます。 順次、修正していく予定ですのでしばらくお待ちください。

もずはっく日記(2014年1月)

2014年1月30日

Bug-org 329127 Simplify nsDOMEvent::DuplicatePrivateData
初回投稿日時: 2014年01月30日12時59分51秒
カテゴリ: Events Mozilla Core Mozilla29 バグ修正
SNS: (list)

nsDOMEvent::DuplicatePrivateData()は、DOMイベントがJSのハンドラ等に捕獲され、ディスパッチ終了後も情報を保持しないといけない場合に、ディスパッチ元が管理しているイベントの情報を、DOMイベント自身が管理するインスタンスを生成して、必要なものだけコピーする、というものです。このメソッドは、イベントの種類ごとにそれぞれ処理を書き、また、widget/配下にイベントクラスを追加しても自動的に対応する訳でもないので、修正漏れの原因になっていました。このバグはそれを解決しようというものです。

この修正により、仮想メソッド、Duplicate()を全てのイベントクラスが実装し、その内部でデータのコピーまで済ませてしまう、という形にしました。今後は、原則的に、新しいイベントを実装する際には、widget/配下に必要なメソッド一式を実装したイベントクラスを作るだけで、大半の仕事が終わることになります。

関連するかもしれないエントリ

bug-org 329127を含むエントリ