This CL is doing a bunch of Misc work to make LocalStorage data persist.

First of all, this allows WebKit clients to specify whether or not the VFS should be used.  In the browser process, we never want it to be.

Next, this allows WebKit clients to specify the behavior of WebKit's FileSystem code.  By default, they should all be NOT_REACHED().  The browser process implements the two of these I need for LocalStorage, but it'll be really easy for the rest to be implemented as needed.

Next, this adds a function that storage routines can call to ensure that lazily initialized stuff that must be initialized on the main WebKit thread is initialized.  Right now, this is just used to initialize the UTF8 conversion tables, but I'm sure there'll be more overt time.

Lastly, this uses the profile directory stored by webkit_context_ to derive the path LocalStorage should use.

This CL also cleans up a few minor style issues as it goes.

TEST=none
BUG=4360

Review URL: http://codereview.chromium.org/159778

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22452 0039d316-1c4b-4281-b951-d872f2087c98
16 files changed