summaryrefslogtreecommitdiffstats
path: root/WebCore/page/Geolocation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/page/Geolocation.cpp')
-rw-r--r--WebCore/page/Geolocation.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/WebCore/page/Geolocation.cpp b/WebCore/page/Geolocation.cpp
index 7dcf0a1..13bc02a 100644
--- a/WebCore/page/Geolocation.cpp
+++ b/WebCore/page/Geolocation.cpp
@@ -221,12 +221,25 @@ Geolocation::~Geolocation()
{
}
+#if PLATFORM(ANDROID)
+void Geolocation::stop()
+{
+ m_oneShots.clear();
+ m_watchers.clear();
+ stopUpdating();
+}
+#endif // PLATFORM(ANDROID)
+
void Geolocation::disconnectFrame()
{
if (m_frame && m_frame->page() && m_allowGeolocation == InProgress)
m_frame->page()->chrome()->cancelGeolocationPermissionRequestForFrame(m_frame, this);
+#if PLATFORM(ANDROID)
+ // See Geolocation::stop()
+#else
stopTimers();
stopUpdating();
+#endif // PLATFORM(ANDROID)
if (m_frame && m_frame->document())
m_frame->document()->setUsingGeolocation(false);
m_frame = 0;
@@ -683,6 +696,10 @@ Geolocation::~Geolocation() {}
void Geolocation::setIsAllowed(bool) {}
+#if PLATFORM(ANDROID)
+void Geolocation::stop() {}
+#endif // PLATFORM(ANDROID)
+
}
#endif // ENABLE(GEOLOCATION)