summaryrefslogtreecommitdiffstats
path: root/chrome/renderer
Commit message (Collapse)AuthorAgeFilesLines
* extensions chrome.self.getViews():rafaelw@chromium.org2009-05-165-2/+108
| | | | | | | | | | extension toolstrips and background pages can now retrieve a list of the other "views" (window objects) in their extension and script them directly R=mpComplete Review URL: http://codereview.chromium.org/115419 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16222 0039d316-1c4b-4281-b951-d872f2087c98
* Shouldn't assume response code of 200 in SimpleDataSourcehclam@chromium.org2009-05-161-7/+12
| | | | | | | | | | | SimpleDataSource assumes the scheme is file or http and the response code is 200. We should just check if the response is successful using response.is_success() and verify the content_length, which will be -1 in case of unspecified length. Review URL: http://codereview.chromium.org/113422 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16217 0039d316-1c4b-4281-b951-d872f2087c98
* ChromeCanvas->gfx::Canvasben@chromium.org2009-05-151-2/+2
| | | | | | | | | | | Rename files too. TBR=brettw http://crbug.com/11387 Review URL: http://codereview.chromium.org/113443 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16148 0039d316-1c4b-4281-b951-d872f2087c98
* Uploaded & applied on behalf of Roger Tawa (rogerta@google.com).rafaelw@chromium.org2009-05-152-1/+4
| | | | | | | | | | | BUG=11200 R=aa,rafaelw http://codereview.chromium.org/115250 Review URL: http://codereview.chromium.org/113442 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16146 0039d316-1c4b-4281-b951-d872f2087c98
* A few quick fixes to SimpleDataSource.scherkus@chromium.org2009-05-142-12/+13
| | | | | | | | | Total bytes and buffered bytes weren't being set and a DCHECK was firing when loading files when it really shouldn't have. Review URL: http://codereview.chromium.org/113385 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16092 0039d316-1c4b-4281-b951-d872f2087c98
* Change VideoRendererImpl to use VideoThread as opposed to VideoRendererBase.scherkus@chromium.org2009-05-142-17/+34
| | | | | | | | Now with less jitter! Review URL: http://codereview.chromium.org/115358 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16087 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Revert "implemented extensions api windows.update().""aa@chromium.org2009-05-143-2/+104
| | | | | | | | | | This reverts commit 81242e3b9c6e6fbc42ccf5f973b27ed4cf4401d6. This wasn't the cause of the breakage. Review URL: http://codereview.chromium.org/115337 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16032 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "implemented extensions api windows.update()."aa@chromium.org2009-05-143-104/+2
| | | | | | | | This reverts commit f2d9a44f3886aeab1378c8dbc1ce445202bc0ca5. Review URL: http://codereview.chromium.org/115335 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16030 0039d316-1c4b-4281-b951-d872f2087c98
* implemented extensions api windows.update().rafaelw@chromium.org2009-05-143-2/+104
| | | | | | | | | | | | | currently only supports {left, top, width, height}. Also, added extensions_api_client_unittest tests for CreateWindow, UpdateWindow & RemoveWindow BUG=11200 R=mpComplete Review URL: http://codereview.chromium.org/115316 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16029 0039d316-1c4b-4281-b951-d872f2087c98
* Retry r16006.estade@chromium.org2009-05-141-1/+1
| | | | | | Review URL: http://codereview.chromium.org/113369 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16025 0039d316-1c4b-4281-b951-d872f2087c98
* revert r16006 due to msvc warning.estade@chromium.org2009-05-131-1/+1
| | | | | | | | TBR=playmobil Review URL: http://codereview.chromium.org/113367 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16007 0039d316-1c4b-4281-b951-d872f2087c98
* Properly convert from UTF8 to UTF16 in WebTextInputImpl.estade@chromium.org2009-05-131-1/+1
| | | | | | | | | String util changes by darin@chromium.org. BUG=11699 Review URL: http://codereview.chromium.org/115215 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16006 0039d316-1c4b-4281-b951-d872f2087c98
* Re-do r15244 again.darin@chromium.org2009-05-132-32/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Originally reviewed at http://codereview.chromium.org/100353 Eliminate webkit/glue/webhistoryitem* in favor of adding a NavigateBackForwardSoon method WebViewDelegate. This moves all of the hacky details of how we intercept "history.{back, forward,go}" into the webkit layer. My eventual plan is to teach WebCore how to make this not hacky. In this version of the CL, TestWebViewDelegate performs the back/forward navigation directly in NavigateBackForwardSoon instead of using PostTask to delay it. I'm doing this to minimize regressions so that I can hopefully get the rest of this CL landed. I also already made the changes to WebKit to force history. {back,forward,go} to be processed asynchronously. Finally, it was necessary to move DumpBackForwardList out of webkit_glue.cc since it was using itemAtIndex to generate those results, and now that we return synthetic URLs for that function, the results were very wrong. The fix is to move DumpBackForwardList into TestShell so that it can more directly inspect the TestNavigationController. Now, it is necessary for webkit_glue.h to expose a function to dump a content state string (aka a WebCore::HistoryItem). BUG=11423 R=mpcomplete Review URL: http://codereview.chromium.org/113328 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15997 0039d316-1c4b-4281-b951-d872f2087c98
* Propagate intrinsic width notification over IPC in all cases (not just ↵pinkerton@chromium.org2009-05-132-7/+33
| | | | | | | | extensions) to the TabContentsView. Enable the zoom button on Mac to utilize it. Ensure we only send the IPC notification when the value changes, as WebCore tends to over-report that it has changed. Fix const-ness in delegate API where it's not necessary. Review URL: http://codereview.chromium.org/115138 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15988 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 15986.michaeln@google.com2009-05-132-63/+2
| | | | | | Review URL: http://codereview.chromium.org/113359 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15987 0039d316-1c4b-4281-b951-d872f2087c98
* CPAPI gears drag drop and renderer IPC....michaeln@google.com2009-05-132-2/+63
| | | | | | | | | | | | | | | | | | | | | | CPAPI (0.10) functions for gears drag drop; one to extract the drag type/data given an NPObject *event, one to override the drop effect (drag cursor). Gears drag drop API receives a browser event as an NPObject* so the event is untrusted. Provide IPC calls to the renderer so gears can pass the event to renderer/V8 for checking, prior to drag type/data extraction, or the setting of the drop effect. V8 event checking is a TODO(noel), http://mondrian/10947778 for the CPAPI (0.10) change submitted to gears. BUG=7995 Original patch by Noel Gordon via: http://codereview.chromium.org/99240 Review URL: http://codereview.chromium.org/115280 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15986 0039d316-1c4b-4281-b951-d872f2087c98
* This CL updates chrome to the latest version of skia, retrieved via DEPS, andsenorblanco@chromium.org2009-05-133-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | placed in third_party. All relevant skia changes (for all 3 platforms) have been upstreamed. Most of this CL is mind-numbingly repetitive. Things of interest are: skia.gyp (now points at third_party versions), DEPS, and SkUserConfig.h. stdint.h: Skia now requires C99 integer types, which MSVC doesn't support natively. I have put typedefs in config/win/stdint.h. Note that the new version of skia appears to render rects whose coordinates are "backwards" (ie., x2 < x1 or y2 < y1), which were formerly culled. There were a couple obvious instances of this in the code which I fixed, but there may be more. There were ~35 layout test failures due to minor pixel differences which I rebaselined on Windows and Linux, and 8 genuine failures related to masks and stroked text, which I have put in text_expectations.txt and assigned to myself. (There was another change which broke ~1700 tests on each platform, but I put that change behind an #ifdef for now). R=brettw Review URL: http://codereview.chromium.org/65012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15949 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: enable out of process dev tools by default. Take 2.pfeldman@chromium.org2009-05-133-4/+9
| | | | | | Review URL: http://codereview.chromium.org/115292 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15947 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r15940 again. Unexpected layout test failures :(darin@chromium.org2009-05-132-2/+32
| | | | | | | TBR=mpcomplete git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15942 0039d316-1c4b-4281-b951-d872f2087c98
* Re-do r15244 again.darin@chromium.org2009-05-132-32/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Originally reviewed at http://codereview.chromium.org/100353 Eliminate webkit/glue/webhistoryitem* in favor of adding a NavigateBackForwardSoon method WebViewDelegate. This moves all of the hacky details of how we intercept "history.{back, forward,go}" into the webkit layer. My eventual plan is to teach WebCore how to make this not hacky. In this version of the CL, TestWebViewDelegate performs the back/forward navigation directly in NavigateBackForwardSoon instead of using PostTask to delay it. I'm doing this to minimize regressions so that I can hopefully get the rest of this CL landed. I also already made the changes to WebKit to force history. {back,forward,go} to be processed asynchronously. BUG=11423 TBR=mpcomplete Review URL: http://codereview.chromium.org/115288 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15940 0039d316-1c4b-4281-b951-d872f2087c98
* Add Automatic spell correction support in Chrome.sidchat@google.com2009-05-122-0/+11
| | | | | | | Issue=7624 Review URL: http://codereview.chromium.org/42608 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15888 0039d316-1c4b-4281-b951-d872f2087c98
* cleanup pending_extension_requests_ in dtor.rafaelw@chromium.org2009-05-121-0/+7
| | | | | | | | | | | pending requests never get cleared in extension_api_client_tests, so they were causing a memory leak. BUG=11809 R=erikkay Review URL: http://codereview.chromium.org/112018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15883 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 15843: chrome performance regression.pfeldman@chromium.org2009-05-123-9/+4
| | | | | | Review URL: http://codereview.chromium.org/113284 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15879 0039d316-1c4b-4281-b951-d872f2087c98
* FormatErrorMessage() functions are now publicly available from ↵rafaelw@chromium.org2009-05-127-80/+146
| | | | | | | | | | | | ExtensionErrorUtils. ExtensionTabsModule implements a bunch of error_messages. Extension Calls now always deliver a response to the calling context and route error messages if any to the window.console.error log. Review URL: http://codereview.chromium.org/113105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15853 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: enable out of process dev tools by default.pfeldman@chromium.org2009-05-123-4/+9
| | | | | | Review URL: http://codereview.chromium.org/115231 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15843 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented Pipeline seek callbacks and a big refactor of PipelineImplTest.scherkus@chromium.org2009-05-122-13/+17
| | | | | | | | Now that I'm wiser writing tests, I'm trying to get rid of InitializationHelper and rely on simplier test fixtures classes. I also introduced MockFilterFactory which is capable of creating all the mock filters and is able to return instantiated instances of filters to permit testing for expectations (refer to PipelineImplTest.Seek for an example). Review URL: http://codereview.chromium.org/115094 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15829 0039d316-1c4b-4281-b951-d872f2087c98
* Split V8Proxy::retrieveActiveFrame() into two methods.aa@chromium.org2009-05-126-11/+15
| | | | | | | | | | | | | | | | | | We now have RetrieveFrameForCurrentContext() and RetrieveFrameForEnteredContext(). These terms means the same thing they do in V8::Context -- 'current' is the top of the js stack and 'entered' is the bottom. I needed 'entered' to fix a bug in extensions where if you call an extension API through the web inspector we get confused and think the web inspector's view is the one who called. Review URL: http://codereview.chromium.org/113085 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15828 0039d316-1c4b-4281-b951-d872f2087c98
* Remove executable bit from a bunch of files that shouldn't have it.evan@chromium.org2009-05-1110-0/+0
| | | | | | | | | | (No code change.) git ls-tree -r HEAD | grep '^100755' | cut -f2 | egrep '\.(png|txt|mm|cc|h|checksum|asm|js|html|c|css|xml|grd|json)$' | xargs chmod a-x git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15809 0039d316-1c4b-4281-b951-d872f2087c98
* Implements keyboard events for RenderViewTest.This change implements a ↵hbono@chromium.org2009-05-116-87/+583
| | | | | | | | function RenderViewTest::SendKeyEvent() that sends a keyboard event to a RenderView object.To emulate not only US keyboards but also non-US keyboards, this change adds a new class "MockKeyboard", which implements a mapping function from a triple <keyboard type, key code, modifiers> to a Unicode character so that engineers can write RenderViewTest cases without taking care of keyboard types.As samples for this new function, I updated my test RenderViewTest.OnHandleKeyboardEvent and added another test RenderViewTest.InsertCharacters.I wish this class help engineers write more RenderViewTest cases. Review URL: http://codereview.chromium.org/92122 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15748 0039d316-1c4b-4281-b951-d872f2087c98
* Move WebKit API to src/webkit/api.darin@chromium.org2009-05-1015-30/+30
| | | | | | | | R=dglazkov Review URL: http://codereview.chromium.org/113186 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15739 0039d316-1c4b-4281-b951-d872f2087c98
* This is the first pass at themes.glen@chromium.org2009-05-091-0/+1
| | | | | | | | | | | | This CL is paired with http://codereview.chromium.org/67284 This CL (for commit purposes) includes http://codereview.chromium.org/67284 BUG=4463,11232,11233,11234,11235 Review URL: http://codereview.chromium.org/99030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15704 0039d316-1c4b-4281-b951-d872f2087c98
* Defer window.close(), resizeTo() and moveTo() actionsmbelshe@google.com2009-05-093-3/+59
| | | | | | | | | | | | | | | | | | | | | | | | | by posting a task back to the message loop before notifying the RenderWidgetHost to perform these operations. Otherwise the JS code races with the browser to use the modified window. BUG=http://crbug.com/6377 BUG=http://crbug.com/6192 Cache a pending_window_rect on the render_view (moved from prior CL where I had it on the chrome_client_impl). This is a short lived cache, and not a complete solution. It fixes this case, where a JS script makes multiple operations and expects the GetWindowSize() to be correct immedately after having called SetWindowSize(). BUG=http://crbug.com/835 Review URL: http://codereview.chromium.org/115030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15698 0039d316-1c4b-4281-b951-d872f2087c98
* Move win_util.h from common to app.ben@chromium.org2009-05-081-1/+0
| | | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/113169 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15694 0039d316-1c4b-4281-b951-d872f2087c98
* Move color_utils, text_elider, drag_utils, accessibility_types, ↵ben@chromium.org2009-05-081-1/+1
| | | | | | | | | standard_layout to new locations in app/ and views/ http://crbug.com/11387 Review URL: http://codereview.chromium.org/113143 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15687 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: make PRIMARY clipboard act on focused webkit frame rather than main ↵estade@chromium.org2009-05-081-3/+5
| | | | | | | | | | frame. BUG=11661 Review URL: http://codereview.chromium.org/115144 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15686 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: Activate inspector window on break / exception.pfeldman@chromium.org2009-05-082-0/+5
| | | | | | Review URL: http://codereview.chromium.org/113100 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15632 0039d316-1c4b-4281-b951-d872f2087c98
* Retry of enabling video on linux. See related review: ↵ajwong@chromium.org2009-05-082-14/+1
| | | | | | | | | | | | | http://codereview.chromium.org/100195 The effective changes were: 1) Adding av_register_protocol into the def file for ffmpeg in windows. 2) Commenting out the drawing glue code for non-skia platforms. 3) Fixing some mac compilation error caused by code drift. Review URL: http://codereview.chromium.org/99306 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15611 0039d316-1c4b-4281-b951-d872f2087c98
* Move src/chrome/views to src/views. RS=darin http://crbug.com/11387ben@chromium.org2009-05-081-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15604 0039d316-1c4b-4281-b951-d872f2087c98
* Use ifdef to take away the paint method for media player from machclam@chromium.org2009-05-072-0/+6
| | | | | | | | | | | Since mac doesn't use skia, there's no WebCanvas, so disable everything using WebCanvas for mac. TBR=scherkus, darin Review URL: http://codereview.chromium.org/113076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15498 0039d316-1c4b-4281-b951-d872f2087c98
* TBR=scherkushclam@chromium.org2009-05-072-2/+1
| | | | | | | | | The implementation of media data source using file handle is not used anymore, disable them. Review URL: http://codereview.chromium.org/115059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15495 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor media player to move away from webkit_gluehclam@chromium.org2009-05-0710-219/+177
| | | | | | | | | | | | Highlights: 1. WebCore::MediaPlayerPrivate now only has one static method that constructs WebMediaPlayerClient 2. Implementation of WebCore::MediaPlayerPrivateInterface now is WebMediaPlayerClient 3. WebMediaPlayerClient does the delgation to WebMediaPlayer 4. Implemtnation of real media player will go into chrome/renderer and implements WebMediaPlayer Review URL: http://codereview.chromium.org/105007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15492 0039d316-1c4b-4281-b951-d872f2087c98
* Popup whitelisting checkpoint.pkasting@chromium.org2009-05-062-6/+6
| | | | | | | | | | | | | | | | | This provides some basic UI for the popup whitelist. The actual whitelist is completely unimplemented and just has TODOs at the hook points. The actual blocking behavior of the browser is unchanged. The popup blocker bubble menu now gets an extra section below the popups with checkable "Always show popups from <host>" items (usually one, can be more on pages with popups from iframes from different hosts). Clicking one of these will whitelist a hostname and open its popups, and remove it from the menu. When navigating to a page with whitelisted popups, the popup blocker bubble is opened (showing "Blocked Popups: 0", text subject to change), and the menu contains the checked entr(y/ies) relevant to these page. Clicking one of these un-whitelists the host and removes the entry from the menu (closing the menu if that was the last such entry). Known UI questions: * Wording is all speculative * Should manually closing all popups associated with a whitelisted site remove that entry/close the menu automatically? (I suspect yes) * Should un-whitelisting a site via the menu entry close its popups, just like whitelisting it opens them? (Not sure) * Should menu items for sites stick around after toggling their whitelisting status, thus keeping the bubble onscreen until it's manually closed, the page is navigated, etc.? (While this is slightly more consistent, I suspect the answer is no) BUG=11440 Review URL: http://codereview.chromium.org/113058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15475 0039d316-1c4b-4281-b951-d872f2087c98
* Get visual theme support for rendererscpu@google.com2009-05-061-0/+22
| | | | | | | | | | | | | | | | - Removing COm initialization broke it - COM creates a hidden window so that was the trick TEST= using windows XP with luna theme enabled, go to a page that has a form with buttons, for example gmail.com. Observe the buttonsb being rounded flat, like the theme and not square and 3d. BUG=http://code.google.com/p/chromium/issues/detail?id=11292 Review URL: http://codereview.chromium.org/113042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15441 0039d316-1c4b-4281-b951-d872f2087c98
* Add an extra colon to make inspector work again.dglazkov@chromium.org2009-05-061-1/+1
| | | | | | | | | | | | | This was broken by http://codereview.chromium.org/101026. R=glen BUG=11532 TESt=open inspector. Inspector shouldn't show a blank page. Review URL: http://codereview.chromium.org/113034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15423 0039d316-1c4b-4281-b951-d872f2087c98
* Change chrome-ui to chrome. I didn't go too far in converting existing ↵glen@chromium.org2009-05-064-6/+8
| | | | | | | | | | | | | | strings to using the url_constant (shipshipship). Users (such as those on Beta and Dev using session restore) attempting to load the old pages will see a blank white screen. BUG=11272 TEST=Verify that the inspector, debugger, history, downloads and newtab pages load with chrome:// URLS. Verify that replacing the chrome:// with chrome-ui:// does not work. Review URL: http://codereview.chromium.org/101026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15378 0039d316-1c4b-4281-b951-d872f2087c98
* Move: drag_drop_types, favicon_size, icon_util, insets, path, ↵ben@chromium.org2009-05-061-2/+2
| | | | | | | | | message_box_flags, os_exchange_data to src/app http://crbug.com/11387 Review URL: http://codereview.chromium.org/115012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15371 0039d316-1c4b-4281-b951-d872f2087c98
* Move chrome_canvas to app/gfxben@chromium.org2009-05-061-1/+1
| | | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/113011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15361 0039d316-1c4b-4281-b951-d872f2087c98
* Add --simple-data-source which uses simplified media resource loading.scherkus@chromium.org2009-05-064-9/+243
| | | | | | | | Comes in really handy for demo purposes and for testing playback performance with buffering and range requests removed from the equation. Review URL: http://codereview.chromium.org/109049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15354 0039d316-1c4b-4281-b951-d872f2087c98
* Move l10n_util to app/ben@chromium.org2009-05-054-4/+4
| | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/109043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15352 0039d316-1c4b-4281-b951-d872f2087c98
* POSIX: Don't allow onunload handlers to hang a renderer forever.agl@chromium.org2009-05-052-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | (Reland of r15025 which was reverted in r15095. |exit| has been changed to |_exit| to save running the onexit handlers while another thread is still in V8 code.) On POSIX one can install an unload handler which loops forever and leave behind a renderer process which eats 100% CPU forever. This is because the terminate signals (ViewMsg_ShouldClose and the error from the IPC channel) are routed to the main message loop but never processes (because that message loop is stuck in V8). One could make the browser SIGKILL the renderers, but that leaves open a large window where a browser failure (or a user, manually terminating the browser because "it's stuck") will leave behind a process eating all the CPU. On Windows we don't have this issue because all the processes are in a job so when the parent dies, all the children are killed too. http://codereview.chromium.org/100222 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15332 0039d316-1c4b-4281-b951-d872f2087c98