summaryrefslogtreecommitdiffstats
path: root/chrome/browser/utility_process_host.h
Commit message (Collapse)AuthorAgeFilesLines
* Revert 63067 - This adds some plumbing for propagating the status and error ↵gspencer@chromium.org2010-10-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | code of a renderer process that went away so that we can tell at the UI level what happened to the tab: did it crash, or was it killed by the OOM killer (or some other reason). This is in preparation for implementing a new UI for when a process is killed by the OOM on ChromeOS which handles it differently from a crash. Most of the changes are modifications of the argument list to include a status and error code for the exited process, but in addition the following was done: - Changed the name of DidProcessCrash to GetTerminationStatus. - Added some new enum values to TerminationStatus enum (and named it) in process_util.h, so it can be used as the status returned by WhatHappenedToProcess. - Improved process_util_unittest to actually test for crashing and terminated processes on all platforms. - Added a new notification for renderers that were killed. - Added error code information to crash notification. - Added status and error code information to renderer IPC message for RenderViewGone. - Added a UMA histogram count for number of renderer kills. [This change was previously reviewed and LGTM'd: http://codereview.chromium.org/3386014/show but due to issues with "git cl push" was never committed to the tree.] BUG=none TEST=ran new unit test. Test passes on try servers. Review URL: http://codereview.chromium.org/3869001 TBR=gspencer@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63074 0039d316-1c4b-4281-b951-d872f2087c98
* This adds some plumbing for propagating the status and error code of agspencer@chromium.org2010-10-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | renderer process that went away so that we can tell at the UI level what happened to the tab: did it crash, or was it killed by the OOM killer (or some other reason). This is in preparation for implementing a new UI for when a process is killed by the OOM on ChromeOS which handles it differently from a crash. Most of the changes are modifications of the argument list to include a status and error code for the exited process, but in addition the following was done: - Changed the name of DidProcessCrash to GetTerminationStatus. - Added some new enum values to TerminationStatus enum (and named it) in process_util.h, so it can be used as the status returned by WhatHappenedToProcess. - Improved process_util_unittest to actually test for crashing and terminated processes on all platforms. - Added a new notification for renderers that were killed. - Added error code information to crash notification. - Added status and error code information to renderer IPC message for RenderViewGone. - Added a UMA histogram count for number of renderer kills. [This change was previously reviewed and LGTM'd: http://codereview.chromium.org/3386014/show but due to issues with "git cl push" was never committed to the tree.] BUG=none TEST=ran new unit test. Test passes on try servers. Review URL: http://codereview.chromium.org/3869001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63067 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeThread to BrowserThread Part22:tfarina@chromium.org2010-10-121-1/+1
| | | | | | | | | | | | | | | | - Include browser_thread instead of chrome_thread in more 97 files. Now the remaining files that are including chrome_thread.h are: chrome_thread.cc and browser_thread.h. They will be fixed next. BUG=56926 TEST=trybots Review URL: http://codereview.chromium.org/3717004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62312 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeThread to BrowserThread Part16:tfarina@chromium.org2010-10-111-2/+2
| | | | | | | | | | | - Rename entries starting from shell_integration.cc. More 30 files covered. BUG=56926 TEST=trybots Review URL: http://codereview.chromium.org/3708001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62136 0039d316-1c4b-4281-b951-d872f2087c98
* Adds IDBKeyPath parser / extractor, and provides a mechanism to call it ↵bulach@chromium.org2010-08-181-1/+36
| | | | | | | | | | sandboxed. TEST=idbkeypathextractor_browsertests.cc Review URL: http://codereview.chromium.org/3043037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56524 0039d316-1c4b-4281-b951-d872f2087c98
* Delete obviously unneeded forward declarations in chrome/browser/*.h.viettrungluu@chromium.org2010-08-051-3/+1
| | | | | | | | | BUG=none TEST=builds Review URL: http://codereview.chromium.org/3080031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55037 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-261-0/+1
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Header cleanup: SkBitmap and other unnecessary includes.erg@chromium.org2010-07-121-1/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/2891008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52093 0039d316-1c4b-4281-b951-d872f2087c98
* Moved common parts of ChildProcessHost into chrome/common and created a ↵sanjeevr@chromium.org2010-07-031-3/+3
| | | | | | | | | | | BrowserChildProcessHost with browser-specific implementation. This is in preparation of creating a ServiceChildProcessHost. BUG=None TEST=Test for regressions . Review URL: http://codereview.chromium.org/2885017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51593 0039d316-1c4b-4281-b951-d872f2087c98
* Added decoding of any supported image format into vector of chars.avayvod@google.com2010-04-151-0/+13
| | | | | | | | | | | | | | This is used for decoding user's image downloaded from Google Profile in sandboxed process upon user's login to Chromium OS. This required adding dependency on webkit/glue/ in chrome/utility. Approved by Brett. BUG=none TEST=none Review URL: http://codereview.chromium.org/1646004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44675 0039d316-1c4b-4281-b951-d872f2087c98
* This looks like it was causing the pipe to sometimes overfill.aa@chromium.org2010-03-171-2/+1
| | | | | | | | | BUG=38220 TEST=See bug Review URL: http://codereview.chromium.org/1003004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41873 0039d316-1c4b-4281-b951-d872f2087c98
* Move more files from chrome/common to chrome/browserphajdan.jr@chromium.org2010-02-231-1/+1
| | | | | | | | | | to further reduce bad dependencies on chrome/browser. BUG=none TEST=none Review URL: http://codereview.chromium.org/652051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39703 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor extension autoupdater.asargent@chromium.org2010-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | This includes two changes: 1) Stop sending the Omaha UID to the gallery in favor of a "ping" parameter included at most once per day in a update manifest fetch, indicating the number of days since the last time we sent the ping parameter. The calculation of this parameter is based on the offset from now to a value in the *previous* response from the server where it indicated it's notion of when that day had started. 2) Batch update manifest requests for extensions with the same update url. The server and protocol have supported this for a while but this is the first time we've added support in the client. BUG=b/2367191 TEST=Extension updates should still work normally. Review URL: http://codereview.chromium.org/558005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37383 0039d316-1c4b-4281-b951-d872f2087c98
* Launch all child processes asynchronously so as not to block the IO thread.jam@chromium.org2009-11-211-1/+1
| | | | | | | BUG=6844, 27935 Review URL: http://codereview.chromium.org/402097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32750 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the utility process unit tests to simplify the utility process code a ↵jam@chromium.org2009-11-191-3/+0
| | | | | | | | little (helpeful to make it use ChildProcessLauncher). Note that the test isn't needed anymore as a unit test because since it was written, there have been a couple of tests that exercise this code path through browser_tests. They use sandboxed utility processes so it's more equivalent to what the user experiences. Review URL: http://codereview.chromium.org/402074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32446 0039d316-1c4b-4281-b951-d872f2087c98
* Parse messages.json in ExtensionUnpacker (like we do for manifest) and pass ↵cira@chromium.org2009-11-181-5/+6
| | | | | | | | | | | | | them to sandboxed_extension_unpacker. Added unittest files for unpacker and sandboxed unpacker. TEST=Try loading any of the unpacker samples added in this CL. They should either pass, or show error and fail. BUG=27362 Review URL: http://codereview.chromium.org/390019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32345 0039d316-1c4b-4281-b951-d872f2087c98
* Ninth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-071-1/+6
| | | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/372013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31357 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of MessageLoop* caching in extensions code.jam@chromium.org2009-10-301-3/+3
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/345023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30550 0039d316-1c4b-4281-b951-d872f2087c98
* Use FilePath in ChildProcessHost.evan@chromium.org2009-10-131-1/+1
| | | | | | | | | BUG=24672 TEST=still compiles Review URL: http://codereview.chromium.org/270077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28909 0039d316-1c4b-4281-b951-d872f2087c98
* Add single line of tips to NNTP.mirandac@chromium.org2009-08-261-1/+1
| | | | | | | | | BUG= http://crbug.com/19162 TEST= Start browser with NNTP, note line of tips at bottom. Review URL: http://codereview.chromium.org/173087 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24384 0039d316-1c4b-4281-b951-d872f2087c98
* Do extensions update manifest XML parsing in a sandboxed process.asargent@chromium.org2009-08-201-0/+13
| | | | | | | | | | | | | | | | This involves moving the xml parsing code from static functions in extension_updater.cc to a UpdateManifest class, and switching from logging any errors directly to collecting them up and passing them across the IPC channel. BUG=http://crbug.com/12677 TEST=extensions auto-update should still work correctly Review URL: http://codereview.chromium.org/164541 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23822 0039d316-1c4b-4281-b951-d872f2087c98
* Split the IPC code into ipc/agl@chromium.org2009-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This splits the ipc code from the common project. The 'common' project pulls in all of webkit, the v8 bindings, skia, googleurl, and a number of other projects which makes it very difficult to deal with especially for external projects wanting just to use some of Chromium's infrastructure. This puts the ipc code into its top-level ipc/ directory with a dependency only on base. The common project depends on the new ipc/ipc.gyp:ipc target so that all projects currently pulling common in to get the IPC code still have it available. This mostly follows agl's pre-gyp attempt to do this which was r13062. Known issues: - Currently a number of projects depend on chrome/chrome.gyp:common in order to use the IPC infrastructure. Rather than fixing all of these dependencies I have made common depend on ipc/ipc.gyp:ipc and added "ipc" to the include_rules section of DEPS so that checkdeps.py doesn't complain. Over time projects that need IPC should depend on the IPC project themselves and dependencies on common removed, although I don't think many projects that need IPC will be able to get away without common currently. - ipc/ipc_message_macros.h still has #include "chrome/common/..." inside of a ipc/ should not refer to files in chrome/... now. I'm not sure how to resolve this since it's really an IDE bug - the named pipe name (windows+linux) and the logging event name (all) + env variable (posix) refer explicitly to 'Chrome' which somewhat hurts the illusion of ipc/ being an independent library. I think this should be examined in a subsequent, much smaller patch. - I've eliminated the IPC.SendMsgCount counter since it was implemented in a way to create a dependency from ipc/ to chrome/common/chrome_counters. This is the same approach that r13062 took. http://codereview.chromium.org/155905 (Patch from James Robinson) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21342 0039d316-1c4b-4281-b951-d872f2087c98
* Make UtilityProcessHost destructor virtual.mattm@chromium.org2009-07-221-1/+1
| | | | | | | | BUG=17129 Review URL: http://codereview.chromium.org/155946 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21323 0039d316-1c4b-4281-b951-d872f2087c98
* Fix extension unpacking on linux/mactc@google.com2009-06-241-0/+7
| | | | | | | | | Add a unittest that pretends to be the UtilityProcessHost and launches a chrome utility process for unpacking a theme. Review URL: http://codereview.chromium.org/147001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19181 0039d316-1c4b-4281-b951-d872f2087c98
* First draft of web resource service; fetches data from a JSON feed mirandac@chromium.org2009-06-181-1/+21
| | | | | | | | | | and stores it in user prefs, where it can be used by the new tab page. BUG = http://crbug.com/13363 Review URL: http://codereview.chromium.org/125052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18766 0039d316-1c4b-4281-b951-d872f2087c98
* Fix an issue where themes would sporadically fail to install.mpcomplete@google.com2009-06-051-5/+1
| | | | | | | | | | | | | | | | Trying to send decoded images over IPC didn't work too well. Instead, we'll write them to a file and have the browser slurp them in from there. My first instinct was to use SharedMemory, but that would require us to impose a limit on the size of the decoded image data. Also made sure that the undecoded images are deleted when we install. BUG=13455 TEST=Try the repro steps in bug 13455 several times and make sure it works every time. Review URL: http://codereview.chromium.org/119255 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17797 0039d316-1c4b-4281-b951-d872f2087c98
* Have the browser process rewrite manifest.json and theme/page action imagesmpcomplete@google.com2009-05-221-4/+14
| | | | | | | | | that the extension unpacker process parsed. BUG=11680 Review URL: http://codereview.chromium.org/115595 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16768 0039d316-1c4b-4281-b951-d872f2087c98
* Introducing the Utility process, which handles the unpacking and verificationmpcomplete@google.com2009-05-151-0/+79
of extension packages. This is a first pass. In the second pass, I will add support for transcoding the manifest and any images in the browser process. BUG=11680 Review URL: http://codereview.chromium.org/114027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16198 0039d316-1c4b-4281-b951-d872f2087c98