[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373
dimich at chromium.org
dimich at chromium.org
Thu Apr 8 01:25:29 UTC 2010
The following commit has been merged in the webkit-1.2 branch:
commit e64bacc24804c82c696b1c8f689c122e41a0cc2e
Author: dimich at chromium.org <dimich at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jan 27 01:20:03 2010 +0000
DumpRenderTree silently crashes at the end of the run because geolocationControllerClient pointer is 0.
https://bugs.webkit.org/show_bug.cgi?id=34191
Reviewed by Steve Falkenburg.
* page/GeolocationController.cpp:
(WebCore::GeolocationController::~GeolocationController): Add check for m_client being 0.
(WebCore::GeolocationController::addObserver): Ditto.
(WebCore::GeolocationController::removeObserver): Ditto.
(WebCore::GeolocationController::lastPosition): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53876 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 41a9f9c..fa06d75 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2010-01-26 Dmitry Titov <dimich at chromium.org>
+
+ Reviewed by Steve Falkenburg.
+
+ DumpRenderTree silently crashes at the end of the run because geolocationControllerClient pointer is 0.
+ https://bugs.webkit.org/show_bug.cgi?id=34191
+
+ * page/GeolocationController.cpp:
+ (WebCore::GeolocationController::~GeolocationController): Add check for m_client being 0.
+ (WebCore::GeolocationController::addObserver): Ditto.
+ (WebCore::GeolocationController::removeObserver): Ditto.
+ (WebCore::GeolocationController::lastPosition): Ditto.
+
2010-01-26 Simon Fraser <simon.fraser at apple.com>
Reviewed by Adele Peterson.
diff --git a/WebCore/page/GeolocationController.cpp b/WebCore/page/GeolocationController.cpp
index 29bc17b..fd18b45 100644
--- a/WebCore/page/GeolocationController.cpp
+++ b/WebCore/page/GeolocationController.cpp
@@ -40,7 +40,8 @@ GeolocationController::GeolocationController(Page* page, GeolocationControllerCl
GeolocationController::~GeolocationController()
{
- m_client->geolocationDestroyed();
+ if (m_client)
+ m_client->geolocationDestroyed();
}
void GeolocationController::addObserver(Geolocation* observer)
@@ -49,7 +50,7 @@ void GeolocationController::addObserver(Geolocation* observer)
bool wasEmpty = m_observers.isEmpty();
m_observers.add(observer);
- if (wasEmpty)
+ if (wasEmpty && m_client)
m_client->startUpdating();
}
@@ -59,7 +60,7 @@ void GeolocationController::removeObserver(Geolocation* observer)
return;
m_observers.remove(observer);
- if (m_observers.isEmpty())
+ if (m_observers.isEmpty() && m_client)
m_client->stopUpdating();
}
@@ -81,6 +82,9 @@ void GeolocationController::errorOccurred(GeolocationError* error)
GeolocationPosition* GeolocationController::lastPosition()
{
+ if (!m_client)
+ return 0;
+
return m_client->lastPosition();
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list