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); |