diff options
author | evanm@google.com <evanm@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-28 17:25:25 +0000 |
---|---|---|
committer | evanm@google.com <evanm@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-28 17:25:25 +0000 |
commit | 04fba9a91d7f46a517f67e1f3f10625ba589b8cc (patch) | |
tree | ca6581ca8d4a70ed21f3331c5510958993333416 /chrome/browser/render_process_host.cc | |
parent | 6a32e8ffd786f1d8da89fba7ca72f2ed3cf5209b (diff) | |
download | chromium_src-04fba9a91d7f46a517f67e1f3f10625ba589b8cc.zip chromium_src-04fba9a91d7f46a517f67e1f3f10625ba589b8cc.tar.gz chromium_src-04fba9a91d7f46a517f67e1f3f10625ba589b8cc.tar.bz2 |
- Make user script loading asynchronous on the file thread.
- Automatically reload scripts when the directory changes.
- Add a unit test for the GreasemonkeyMaster.
Review URL: http://codereview.chromium.org/7472
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4069 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/render_process_host.cc')
-rw-r--r-- | chrome/browser/render_process_host.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/chrome/browser/render_process_host.cc b/chrome/browser/render_process_host.cc index 62a73ee..22ab752 100644 --- a/chrome/browser/render_process_host.cc +++ b/chrome/browser/render_process_host.cc @@ -469,14 +469,15 @@ void RenderProcessHost::InitGreasemonkeyScripts(HANDLE target_process) { // - File IO should be asynchronous (see VisitedLinkMaster), but how do we // get scripts to the first renderer without blocking startup? Should we // cache some information across restarts? - GreasemonkeyMaster* greasemonkey_master = - Singleton<GreasemonkeyMaster>::get(); + GreasemonkeyMaster* greasemonkey_master = profile_->GetGreasemonkeyMaster(); if (!greasemonkey_master) { return; } - // TODO(aa): This does blocking IO. Move to background thread. - greasemonkey_master->UpdateScripts(); + if (!greasemonkey_master->ScriptsReady()) { + // No scripts ready. :( + return; + } SharedMemoryHandle handle_for_process = NULL; greasemonkey_master->ShareToProcess(target_process, &handle_for_process); |