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

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

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

2015年7月26日

Bug-org 1184533 [IMM] ASSERTION: offset is less than cursorPosition!: 'offset >= cursorPosition'
初回投稿日時: 2015年07月26日15時07分39秒
カテゴリ: IME Mozilla Core Mozilla42 Windows バグ修正
SNS: (list)

IMMHandler::GetCharacterRectOfSelectedTextAt()に昔からあったバグのようです。このメソッドは、選択開始位置、もしくは未確定文字列がある時はその最初の文字からaOffset文字目の文字の矩形を取得するためのものですが、未確定文字列があり、未確定文字列内にキャレットが存在している場合の計算に失敗して、このassertionにヒットしていました。

結局、何が悪かったのかよく分からないので、コード自体をより分かりやすい形で書き直したら再現しなくなりました。下手に最低限のコードで同じ結果を得ようとしてはいけませんね。

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

bug-org 1184533を含むエントリ