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

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

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

2015年6月30日

Bug-org 1177388 [e10s] ContentCache should be separated as two clasesses
初回投稿日時: 2015年06月30日22時33分24秒
最終更新日時: 2015年06月30日22時35分59秒
カテゴリ: e10s Mozilla Core Mozilla41 バグ修正
SNS: (list)

ContentCacheの初期実装時には、親プロセスのみで利用されるべきメンバと、子プロセスでみ利用されるべきメンバをコメントや、ContentCache::mIsChromeでバグを検出するようにしていました。しかし、親プロセス側にメンバを大量に追加する必要が出てきているのと、mIsChromeは親プロセスでtrueになるわけではなく、chromeプロセスでのみtrueになるようになっていたため、B2Gで利用されているネストされたマルチプロセスではうまく動かなくなっていました。これらの問題を修正するためにクラスを親プロセス用と子プロセス用に分離する必要が出てきました。

この修正により、どちらのプロセスでも利用する共通のメンバをContentCacheで定義し、親プロセス用にはContentCacheInParent、子プロセス用にはContentCacheInChildを定義し、それぞれが必要なメンバのみを定義・実装するようになりました。これにより、chromeプロセスかどうかで動作を変える基準になっていたmIsChromeも廃止され、シンプルなコードになっています。

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

bug-org 1177388を含むエントリ