On Dec 4, 2008, at 10:47 AM, Yael.Aharon@nokia.com wrote:
I'd be happy to fix this bug and submit a patch when I am done. Before I can do that, I have a question - why is LocalStorgare created and tracked per page group and not per process, like offline storage databases are?
The reason page groups exist is that within the same process, WebKit can be used for multiple purposes. For example, imagine a web browser that has a separate help viewer within the same process. The page group allows the help viewer to use web views but not share the rest of its state with the web browser windows. Ideally features like local storage can be separate for different page groups or can be shared if the page groups are closely related. As to the specific question of why offline storage database is per- process and local storage is per-page-group, I can't really explain the difference. It would make sense to have both be per-page-group. At present, none of this matters for major WebKit clients. Clients like Safari on Windows that use multiple page groups typically have one "like a browser" page group, and other page groups that have features like local storage and database disabled entirely. -- Darin