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

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

もずはっく日記(2015年10月)

2015年10月31日

Bug-org 1215798 nsContentIterator::Init(nsIDOMRange*) ignores start node of the range if it's empty node like <br> when mPre == true
初回投稿日時: 2015年10月31日12時02分44秒
最終更新日時: 2015年10月31日12時03分47秒
カテゴリ: Mozilla Core Mozilla44 バグ修正
SNS: (list)

ContentEventHandlerの修正をしていて発見したnsContentIteratorのバグです。NS_NewPreContentIterator()でインスタンスを生成した場合、指定した範囲のルートとなる要素から最初の葉ノードまで列挙していく、開始タグを列挙する動作になりますが、この際、指定した範囲の開始位置が空要素のオフセット0だと、その開始要素を無視してしまうというバグです。

例えば、[<br>text]nodeの"[]"部分を指定したい場合、開始位置が<br>要素のオフセット0、終了位置がtextnodeのオフセット4というケースがありますが、この場合、textnodeのみが列挙されていました。

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

bug-org 1215798を含むエントリ