Bug 59210 - WebKit2: Stop Responsiveness Timer when WebPageProxy closes or WebProcess crashes
Summary: WebKit2: Stop Responsiveness Timer when WebPageProxy closes or WebProcess cra...
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC OS X 10.5
: P2 Normal
Assignee: Brian Weinstein
Depends on:
Reported: 2011-04-22 10:30 PDT by Brian Weinstein
Modified: 2011-04-29 11:25 PDT (History)
2 users (show)

See Also:

[PATCH] Fix (1.50 KB, patch)
2011-04-22 10:33 PDT, Brian Weinstein
sam: review-
Details | Formatted Diff | Diff
[PATCH] Fix v2 (1.51 KB, patch)
2011-04-22 10:43 PDT, Brian Weinstein
sam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Brian Weinstein 2011-04-22 10:30:36 PDT
We should stop the responsiveness timer when a WebPageProxy closes or when the WebProcess crashes.
Comment 1 Brian Weinstein 2011-04-22 10:33:22 PDT
Created attachment 90721 [details]
Comment 2 Sam Weinig 2011-04-22 10:35:58 PDT
Comment on attachment 90721 [details]

View in context: https://bugs.webkit.org/attachment.cgi?id=90721&action=review

> Source/WebKit2/UIProcess/WebPageProxy.cpp:182
> +    process()->responsivenessTimer()->stop();

This should probably be in close(), not the destructor.
Comment 3 Brian Weinstein 2011-04-22 10:43:03 PDT
Created attachment 90723 [details]
[PATCH] Fix v2
Comment 4 Sam Weinig 2011-04-22 10:45:03 PDT
Comment on attachment 90723 [details]
[PATCH] Fix v2

View in context: https://bugs.webkit.org/attachment.cgi?id=90723&action=review

> Source/WebKit2/UIProcess/WebPageProxy.cpp:357
> +    process()->responsivenessTimer()->stop();

The remove webpage thing call should be last, please move this above the call to process()->send(Messages::WebPage::Close(), m_pageID) to keep consistency.
Comment 5 Brian Weinstein 2011-04-22 10:47:36 PDT
Landed in r84643.
Comment 6 Adam Roben (:aroben) 2011-04-29 11:25:36 PDT
For posterity's sake:

The issue this was trying to fix was: clicking the "close" button in the docked Web Inspector would cause the UI process to think the web process had become unresponsive. Our theory for why this was happening was that the Web Inspector's WebPage wasn't having time to send the DidHandleEvent message back to the UI process before it was closed. Thus we tried to fix the issue by always stopping the responsiveness timer whenever a WebPage gets closed.