Bug-org 911463 nsDOMUIEvent::IsChar() casts nsTextEvent* as nsKeyEvent*
初回投稿日時: 2013年09月30日21時11分17秒
カテゴリ: Events Mozilla Core Mozilla26 バグ修正
SNS:
Tweet (list)
GeckoのDOM KeyboardEvent
と、TextEvent
にはisChar
というプロパティがありますが、TextEvent.isChar
の取得時に、間違えたキャストを行って、正しい値を返していなかったというバグです。
isChar
の値は、nsKeyEvent
と、nsTextEvent
のメンバに保存されているので、それぞれに正しくキャストしてアクセスしなくてはいけないのですが、nsTextEvent
のインスタンスであっても、nsKeyEvent
にキャストしてアクセスしていました。
見つけた時は焦ったのですが、調べたところ、32bit版でも、64bit版でも、クラスのインスタンス内を参照しているので、クラッシュすることはありません。返ってくる値がデタラメなだけでした。
このバグ自体は修正しましたが、そもそも、nsTextEvent::isChar
は正しく初期化されていないプラットフォームの方が多い上に、他のブラウザには存在しない非標準イベントですので、参照しないようにしてください。