Index: chrome/browser/geolocation/geolocation_confirm_infobar_delegate_android.h |
diff --git a/chrome/browser/geolocation/geolocation_confirm_infobar_delegate_android.h b/chrome/browser/geolocation/geolocation_confirm_infobar_delegate_android.h |
index efcf459bf0bb70b7c2bcaad1917e5a41a5c097e3..91820d0b945f7f736b15ff62d9af10b45b331ae4 100644 |
--- a/chrome/browser/geolocation/geolocation_confirm_infobar_delegate_android.h |
+++ b/chrome/browser/geolocation/geolocation_confirm_infobar_delegate_android.h |
@@ -7,10 +7,13 @@ |
#include "chrome/browser/geolocation/geolocation_confirm_infobar_delegate.h" |
+class GoogleLocationSettingsHelper; |
+ |
class GeolocationConfirmInfoBarDelegateAndroid |
: public GeolocationConfirmInfoBarDelegate { |
public: |
GeolocationConfirmInfoBarDelegateAndroid( |
+ GoogleLocationSettingsHelper* google_location_settings_helper, |
InfoBarTabHelper* infobar_helper, |
GeolocationInfoBarQueueController* controller, |
int render_process_id, |
@@ -23,6 +26,11 @@ class GeolocationConfirmInfoBarDelegateAndroid |
// ConfirmInfoBarDelegate: |
virtual string16 GetButtonLabel(InfoBarButton button) const OVERRIDE; |
virtual bool Accept() OVERRIDE; |
+ |
+ // We are guaranteed that the InfoBars and their delegates will be destroyed |
+ // before ChromeGeolocationPermissionContextAndroid which owns this |
+ // google_location_settings_helper_. |
+ GoogleLocationSettingsHelper* google_location_settings_helper_; |
}; |
#endif // CHROME_BROWSER_GEOLOCATION_GEOLOCATION_CONFIRM_INFOBAR_DELEGATE_ANDROID_H_ |