Title: [172103] branches/safari-600.1-branch/Source
- Revision
- 172103
- Author
- lforsch...@apple.com
- Date
- 2014-08-05 16:29:53 -0700 (Tue, 05 Aug 2014)
Log Message
Merged r172016. <rdar://problem/17896295>
Modified Paths
Diff
Modified: branches/safari-600.1-branch/Source/WebKit/mac/ChangeLog (172102 => 172103)
--- branches/safari-600.1-branch/Source/WebKit/mac/ChangeLog 2014-08-05 23:27:27 UTC (rev 172102)
+++ branches/safari-600.1-branch/Source/WebKit/mac/ChangeLog 2014-08-05 23:29:53 UTC (rev 172103)
@@ -1,5 +1,20 @@
2014-08-05 Lucas Forschler <lforsch...@apple.com>
+ Merge r172016
+
+ 2014-08-04 Benjamin Poulain <bpoul...@apple.com>
+
+ Check for null frame when processing geolocation authorization request
+ https://bugs.webkit.org/show_bug.cgi?id=135577
+ <rdar://problem/17896295>
+
+ Reviewed by Geoffrey Garen.
+
+ * WebCoreSupport/WebGeolocationClient.mm:
+ (WebGeolocationClient::requestPermission):
+
+2014-08-05 Lucas Forschler <lforsch...@apple.com>
+
Merge r171973
2014-08-02 Jeremy Jones <jere...@apple.com>
Modified: branches/safari-600.1-branch/Source/WebKit/mac/WebCoreSupport/WebGeolocationClient.mm (172102 => 172103)
--- branches/safari-600.1-branch/Source/WebKit/mac/WebCoreSupport/WebGeolocationClient.mm 2014-08-05 23:27:27 UTC (rev 172102)
+++ branches/safari-600.1-branch/Source/WebKit/mac/WebCoreSupport/WebGeolocationClient.mm 2014-08-05 23:29:53 UTC (rev 172103)
@@ -112,6 +112,12 @@
#if !PLATFORM(IOS)
Frame *frame = geolocation->frame();
+
+ if (!frame) {
+ geolocation->setIsAllowed(false);
+ return;
+ }
+
WebSecurityOrigin *webOrigin = [[WebSecurityOrigin alloc] _initWithWebCoreSecurityOrigin:frame->document()->securityOrigin()];
WebGeolocationPolicyListener* listener = [[WebGeolocationPolicyListener alloc] initWithGeolocation:geolocation];
Modified: branches/safari-600.1-branch/Source/WebKit2/ChangeLog (172102 => 172103)
--- branches/safari-600.1-branch/Source/WebKit2/ChangeLog 2014-08-05 23:27:27 UTC (rev 172102)
+++ branches/safari-600.1-branch/Source/WebKit2/ChangeLog 2014-08-05 23:29:53 UTC (rev 172103)
@@ -1,5 +1,24 @@
2014-08-05 Lucas Forschler <lforsch...@apple.com>
+ Merge r172016
+
+ 2014-08-04 Benjamin Poulain <bpoul...@apple.com>
+
+ Check for null frame when processing geolocation authorization request
+ https://bugs.webkit.org/show_bug.cgi?id=135577
+ <rdar://problem/17896295>
+
+ Reviewed by Geoffrey Garen.
+
+ I could have put the null check in GeolocationController instead of the WebKit layer,
+ but that would be a little weird as GeolocationController knows nothing about how
+ the WebKit layer decides what to do with requests.
+
+ * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
+ (WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):
+
+2014-08-05 Lucas Forschler <lforsch...@apple.com>
+
Merge r171973
2014-08-02 Jeremy Jones <jere...@apple.com>
Modified: branches/safari-600.1-branch/Source/WebKit2/WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp (172102 => 172103)
--- branches/safari-600.1-branch/Source/WebKit2/WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp 2014-08-05 23:27:27 UTC (rev 172102)
+++ branches/safari-600.1-branch/Source/WebKit2/WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp 2014-08-05 23:29:53 UTC (rev 172103)
@@ -55,13 +55,19 @@
void GeolocationPermissionRequestManager::startRequestForGeolocation(Geolocation* geolocation)
{
+ Frame* frame = geolocation->frame();
+
+ ASSERT_WITH_MESSAGE(frame, "It is not well understood in which cases the Geolocation is alive after its frame goes away. If you hit this assertion, please add a test covering this case.");
+ if (!frame) {
+ geolocation->setIsAllowed(false);
+ return;
+ }
+
uint64_t geolocationID = generateGeolocationID();
m_geolocationToIDMap.set(geolocation, geolocationID);
m_idToGeolocationMap.set(geolocationID, geolocation);
- Frame* frame = geolocation->frame();
-
WebFrame* webFrame = WebFrame::fromCoreFrame(*frame);
ASSERT(webFrame);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes