Comment #2 on issue 9442 by [email protected]: Crash -  
InterstitialPage::~InterstitialPage()
http://code.google.com/p/chromium/issues/detail?id=9442

Still not sure what is going on here.

The SafeBrowsingBlockingPage when it's deleted removes itself from a global  
map that stores tab -> SafeBrowsingBlockingPage.
Somehow the tab is not to be found in the map, we try to erase a nil  
iterator from the map which throws an exception
and causes this crasher.

It cannot be that the SafeBrowsingBlockingPage is deleted twice, as the  
stack shows this delete is originally
triggered by a notification through a registrar on the class (so if the  
class was deleted, so would the registrar and
we would not see any notifications).

Since the SafeBrowsingBlockingPage registers itself in the map when Show()  
is called, it could be that we delete a SafeBrowsingBlockingPage that was  
never shown.
Or that we somehow creates more than 1 SafeBrowsingBlockingPage for a tab,  
so when the 2nd gets deleted the mapping
for that tab is already gone.

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