Index: chrome/browser/tab_contents/tab_contents.cc |
diff --git a/chrome/browser/tab_contents/tab_contents.cc b/chrome/browser/tab_contents/tab_contents.cc |
index 363157535a9966f1d1df89e4ec6d2b81393d23f5..025fb2b8af16845b004a6efbcde5c6dac6c3b7b1 100644 |
--- a/chrome/browser/tab_contents/tab_contents.cc |
+++ b/chrome/browser/tab_contents/tab_contents.cc |
@@ -2129,6 +2129,7 @@ void TabContents::DidStartProvisionalLoadForFrame( |
RenderViewHost* render_view_host, |
long long frame_id, |
bool is_main_frame, |
+ bool is_unreachable_web_data, |
darin (slow to review)
2010/11/30 18:28:57
nit: "is_error_page" seems like a better choice fo
|
const GURL& url) { |
ProvisionalLoadDetails details(is_main_frame, |
controller_.IsURLInPageNavigation(url), |
@@ -2138,7 +2139,11 @@ void TabContents::DidStartProvisionalLoadForFrame( |
Source<NavigationController>(&controller_), |
Details<ProvisionalLoadDetails>(&details)); |
if (is_main_frame) { |
- content_settings_delegate_->ClearCookieSpecificContentSettings(); |
+ // If we're displaying a network error page do not reset the content |
+ // settings delegate's cookies so the user has a chance to modify cookie |
+ // settings. |
+ if (!is_unreachable_web_data) |
+ content_settings_delegate_->ClearCookieSpecificContentSettings(); |
content_settings_delegate_->ClearGeolocationContentSettings(); |
} |
} |