Chromium Code Reviews| Index: Source/modules/geolocation/Geolocation.cpp |
| diff --git a/Source/modules/geolocation/Geolocation.cpp b/Source/modules/geolocation/Geolocation.cpp |
| index 1aa1d4fc255d5b42a0100056165fa55209e8a4d5..1a5375907ac4ef06a4d2c50dd4acef12b77b4088 100644 |
| --- a/Source/modules/geolocation/Geolocation.cpp |
| +++ b/Source/modules/geolocation/Geolocation.cpp |
| @@ -29,6 +29,7 @@ |
| #include "modules/geolocation/Geolocation.h" |
| #include "core/dom/Document.h" |
| +#include "core/frame/UseCounter.h" |
| #include "modules/geolocation/Coordinates.h" |
| #include "modules/geolocation/GeolocationController.h" |
| #include "modules/geolocation/GeolocationError.h" |
| @@ -137,11 +138,29 @@ Geoposition* Geolocation::lastPosition() |
| return m_lastPosition.get(); |
| } |
| +void Geolocation::recordOriginTypeAccess() const |
| +{ |
| + ASSERT(frame()); |
| + |
| + Document* doc = document(); |
|
Michael van Ouwerkerk
2014/10/02 15:47:26
Please don't use abbreviations for variables witho
|
| + ASSERT(doc); |
| + |
| + // It is required but canAccessFeatureRequiringSecureOrigin() but isn't |
|
Michael van Ouwerkerk
2014/10/02 15:47:26
but but?
Peter Beverloo
2014/10/02 15:49:24
s/canAccessFeatureRequiringSecureOrigin()/insecure
|
| + // actually used. This could be used later if a warning is shown in the |
| + // developer console. |
| + String insecureOriginMsg; |
| + UseCounter::Feature counter = doc->securityOrigin()->canAccessFeatureRequiringSecureOrigin(insecureOriginMsg) |
| + ? UseCounter::GeolocationSecureOrigin : UseCounter::GeolocationInsecureOrigin; |
| + UseCounter::count(doc, counter); |
| +} |
| + |
| void Geolocation::getCurrentPosition(PositionCallback* successCallback, PositionErrorCallback* errorCallback, const Dictionary& options) |
| { |
| if (!frame()) |
| return; |
| + recordOriginTypeAccess(); |
| + |
| GeoNotifier* notifier = GeoNotifier::create(this, successCallback, errorCallback, PositionOptions::create(options)); |
| startRequest(notifier); |
| @@ -153,6 +172,8 @@ int Geolocation::watchPosition(PositionCallback* successCallback, PositionErrorC |
| if (!frame()) |
| return 0; |
| + recordOriginTypeAccess(); |
| + |
| GeoNotifier* notifier = GeoNotifier::create(this, successCallback, errorCallback, PositionOptions::create(options)); |
| startRequest(notifier); |