| Summary: | Crash when starting a download before the network process has been launched | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Carlos Garcia Campos <cgarcia> | ||||
| Component: | WebKit2 | Assignee: | Nobody <webkit-unassigned> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | CC: | andersca, ap, beidson, sam | ||||
| Priority: | P2 | ||||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Bug Depends on: | |||||||
| Bug Blocks: | 126131 | ||||||
| Attachments: |
|
||||||
|
Description
Carlos Garcia Campos
2013-12-27 01:15:23 PST
Created attachment 220054 [details]
Patch
Comment on attachment 220054 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=220054&action=review Good job! > Source/WebKit2/UIProcess/WebContext.cpp:766 > + networkProcess()->send(Messages::NetworkProcess::DownloadRequest(downloadProxy->downloadID(), request), 0); I guess this is totally unrelated and just to keep consistency with the rest of the file > Source/WebKit2/UIProcess/WebContext.cpp:946 > #endif Looks correct. I understand that this might be difficult to reproduce in real life situations (as a webprocess should have been spawned and a networkprocess with it) but easily in the unit tests. (In reply to comment #2) > (From update of attachment 220054 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=220054&action=review > > Good job! > > > Source/WebKit2/UIProcess/WebContext.cpp:766 > > + networkProcess()->send(Messages::NetworkProcess::DownloadRequest(downloadProxy->downloadID(), request), 0); > > I guess this is totally unrelated and just to keep consistency with the rest of the file No, it's not, see the ChageLog. "Use ChildProcessProxy::send() instead of using the connection to make sure messages are queued" > > Source/WebKit2/UIProcess/WebContext.cpp:946 > > #endif > > Looks correct. I understand that this might be difficult to reproduce in real life situations (as a webprocess should have been spawned and a networkprocess with it) but easily in the unit tests. It's difficult to happen in a web browser, yes, but our API allows to start a download from a WebContext without any web page involved. Comment on attachment 220054 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=220054&action=review >>> Source/WebKit2/UIProcess/WebContext.cpp:766 >>> + networkProcess()->send(Messages::NetworkProcess::DownloadRequest(downloadProxy->downloadID(), request), 0); >> >> I guess this is totally unrelated and just to keep consistency with the rest of the file > > No, it's not, see the ChageLog. > > "Use ChildProcessProxy::send() instead of using the connection to make sure messages are queued" Oh yeah I totally overlooked it Committed r161559: <http://trac.webkit.org/changeset/161559> |