Comment #11 on issue 27074 by [email protected]: Browser crash:  
URLFetcher::Core::StartURLRequest()
http://code.google.com/p/chromium/issues/detail?id=27074

The following revision refers to this bug:
     http://src.chromium.org/viewvc/chrome?view=rev&revision=31821

------------------------------------------------------------------------
r31821 | [email protected] | 2009-11-12 12:52:56 -0800 (Thu, 12 Nov 2009)  
| 10 lines
Changed paths:
    M  
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/safe_browsing/protocol_manager.cc?r1=31821&r2=31820
    M  
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/safe_browsing/protocol_manager.h?r1=31821&r2=31820
    M  
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/safe_browsing/protocol_manager_unittest.cc?r1=31821&r2=31820
    M  
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/safe_browsing/safe_browsing_service.cc?r1=31821&r2=31820
    M  
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/safe_browsing/safe_browsing_service.h?r1=31821&r2=31820

Fix a crash during shutdown where SafeBrowsingProtocolManager could end up  
getting back NULL for Profile::GetDefaultRequestContext() and consequently  
URLFetcher would crash.

During shutdown the Profile is first deleted, and THEN the IO thread is  
torn down.
This means there is a window of time when  
Profile::GetDefaultRequestContext() will return NULL, but tasks are still  
running on the IO thread.

Instead, SafeBrowsingProtocolManager now gets passed an explicit context,  
and holds a reference throughout its lifetime.
This way it is guaranteed a valid pointer throughout the lifetime of the IO  
thread, even if the default Profile has already been deleted.

BUG=27074
Review URL: http://codereview.chromium.org/392010
------------------------------------------------------------------------


--
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