Updates:
        Status: Started

Comment #2 on issue 18677 by [email protected]: Warnings in  
ResourceDispatcher about receiving nonexistant or finished request when  
doing scrubing in <video>
http://code.google.com/p/chromium/issues/detail?id=18677

But there's a hidden memory leak in the browser process due to the practice  
of
deleting the resource request handle immediately after we cancel it.

This is related to how we suspend a resource request, here's a sequence of  
actions:

1. Browser replies a request with header
2. Browser replies a request with data
3. Browser replies too much data without getting an ACK message
4. Browser pause the request with > 20 un-ACKed data message
5. Browser receives a cancel message of the above resource request

Since in the renderer process we delete the resource handle  
(ResourceLoaderBridge)
immediately, the request is never resumed in the browser thus the cancel  
request is
never processed. Thus resulting a dangling paused resource request job in  
the browser.

The way to fix this leak and also the excessive amount of warnings is to  
actually
wait for the whole data conversation to complete before we delete the  
resource
handle. This implies we need to keep our resource handle refcounted.. I'll  
draft a
change to illustrate this idea.


--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---

Reply via email to