[go: up one dir, main page]

Fix WebURLLoaderImpl::Context leak if a pending request is canceled.

Now, ResourceDispatcher::CancelPendingRequest will send
ResourceHostMsg_CancelRequest and trigger OnRequestComplete. However,
the request is pending and thus OnRequestComplete will be queued.

There are at least two problems if OnRequestComplete is not called:
1. WebURLLoaderImpl::Context will never be released.
2. request_info->buffer leaks. The buffer holds shared memory handle
   (file descriptor). fd leaking may lead to HW video decode failure on
   ChromeOS (detail in chrome-os-partner:27911#63)

This issue is similar to issue 328092.

BUG=chrome-os-partner:27911,chromium:369221,chromium:369128
R=jam@chromium.org, mmenke@chromium.org

Review URL: https://codereview.chromium.org/268423002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269361 0039d316-1c4b-4281-b951-d872f2087c98
2 files changed