Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(883)

Side by Side Diff: chrome/browser/geolocation/chrome_geolocation_permission_context.cc

Issue 282693002: Add a null check for PermissionBubbleManager::FromWebcontents. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/geolocation/chrome_geolocation_permission_context.h" 5 #include "chrome/browser/geolocation/chrome_geolocation_permission_context.h"
6 6
7 #include <functional> 7 #include <functional>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 case CONTENT_SETTING_BLOCK: 235 case CONTENT_SETTING_BLOCK:
236 PermissionDecided(id, requesting_frame, embedder, callback, false); 236 PermissionDecided(id, requesting_frame, embedder, callback, false);
237 break; 237 break;
238 case CONTENT_SETTING_ALLOW: 238 case CONTENT_SETTING_ALLOW:
239 PermissionDecided(id, requesting_frame, embedder, callback, true); 239 PermissionDecided(id, requesting_frame, embedder, callback, true);
240 break; 240 break;
241 default: 241 default:
242 if (PermissionBubbleManager::Enabled()) { 242 if (PermissionBubbleManager::Enabled()) {
243 PermissionBubbleManager* mgr = 243 PermissionBubbleManager* mgr =
244 PermissionBubbleManager::FromWebContents(web_contents); 244 PermissionBubbleManager::FromWebContents(web_contents);
245 mgr->AddRequest(new GeolocationPermissionRequest( 245 if (mgr) {
246 this, id, requesting_frame, user_gesture, callback, 246 mgr->AddRequest(new GeolocationPermissionRequest(
247 profile_->GetPrefs()->GetString(prefs::kAcceptLanguages))); 247 this, id, requesting_frame, user_gesture, callback,
248 profile_->GetPrefs()->GetString(prefs::kAcceptLanguages)));
249 }
248 } else { 250 } else {
249 // setting == ask. Prompt the user. 251 // setting == ask. Prompt the user.
250 QueueController()->CreateInfoBarRequest( 252 QueueController()->CreateInfoBarRequest(
251 id, requesting_frame, embedder, accept_button_label, 253 id, requesting_frame, embedder, accept_button_label,
252 base::Bind( 254 base::Bind(
253 &ChromeGeolocationPermissionContext::NotifyPermissionSet, 255 &ChromeGeolocationPermissionContext::NotifyPermissionSet,
254 base::Unretained(this), id, requesting_frame, callback)); 256 base::Unretained(this), id, requesting_frame, callback));
255 } 257 }
256 } 258 }
257 } 259 }
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 322
321 void ChromeGeolocationPermissionContext::CancelPendingInfobarRequest( 323 void ChromeGeolocationPermissionContext::CancelPendingInfobarRequest(
322 const PermissionRequestID& id) { 324 const PermissionRequestID& id) {
323 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); 325 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
324 if (shutting_down_) 326 if (shutting_down_)
325 return; 327 return;
326 328
327 // TODO(gbillock): handle permission bubble cancellation. 329 // TODO(gbillock): handle permission bubble cancellation.
328 QueueController()->CancelInfoBarRequest(id); 330 QueueController()->CancelInfoBarRequest(id);
329 } 331 }
OLDNEW
« no previous file with comments | « chrome/browser/chrome_quota_permission_context.cc ('k') | chrome/browser/media/chrome_midi_permission_context.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698