Bug-org 964718 MOZ_CRASH(WidgetQueryContentEvent doesn't support Duplicate()) at ../../dist/include/mozilla/TextEvents.h:333
初回投稿日時: 2014年03月31日20時55分21秒
最終更新日時: 2014年04月17日12時32分00秒
カテゴリ: Events Mozilla Core Mozilla29 Mozilla30 Mozilla31 バグ修正
SNS:
Tweet (list)
Geckoが内部処理用に発行したイベントが、何らかの理由でWebコンテンツにキャッチされ、サポートしていないDOMイベントのコピー処理が走って、クラッシュする、というバグです。
内部処理用のイベントは、匿名のDOMイベントの発火も伴います。しかし、イベントが匿名であるが故に、DOMイベント用の処理は不要なはずなので、そのような想定外のことが発生した場合には、クラッシュするようにしておいたところ、クラッシュするケースが発見されました。
発見されたケースでは、開発者向けツールで、イベントを捕捉するようにすることが条件となっていました。Smaugによると、nsIEventListenerService
を利用すれば、全てのイベントを捕まえることが可能なので、それが原因かもしれない、とのことでしたが、確認はとれていません。
今回の修正で、DOMイベントの発火が内部処理でも不要なものに関しては、DOMイベント自体の生成をスキップするように修正しました。このため、IME利用時のパフォーマンスが若干改善していると思われます(体感はできないと思いますが、バッテリの浪費を防ぐという意味で)。
また、匿名のイベントを今の設計では発火させざるを得ないものに関しては、そのまま発火させ、DOMイベント用の処理を実装し、クラッシュしないように修正しています。
AuroraとBetaにもパッチが入ったため、29以降で修正されたことになります。