Index: chrome/browser/geolocation/geolocation_permission_context.cc |
diff --git a/chrome/browser/geolocation/geolocation_permission_context.cc b/chrome/browser/geolocation/geolocation_permission_context.cc |
index 4aec91f3f3a2e67842bf8580d7036554359dcc21..9b6733fe1ab6df7f3e5aca670e2028c40843f4bc 100644 |
--- a/chrome/browser/geolocation/geolocation_permission_context.cc |
+++ b/chrome/browser/geolocation/geolocation_permission_context.cc |
@@ -427,12 +427,16 @@ void GeolocationPermissionContext::NotifyPermissionSet( |
const GURL& requesting_frame, bool allowed) { |
DCHECK(ChromeThread::CurrentlyOn(ChromeThread::UI)); |
- RenderViewHostDelegate::ContentSettings* content_settings = |
+ TabContents* tab_contents = |
tab_util::GetTabContentsByID(render_process_id, render_view_id); |
+ |
// TabContents may have gone away (or not exists for extension). |
- if (content_settings) |
+ if (tab_contents) { |
+ TabSpecificContentSettings* content_settings = |
+ tab_contents->GetTabSpecificContentSettings(); |
content_settings->OnGeolocationPermissionSet(requesting_frame.GetOrigin(), |
allowed); |
+ } |
CallRenderViewHost( |
render_process_id, render_view_id, |