Title: [219713] trunk/Source/WebKit
Revision
219713
Author
beid...@apple.com
Date
2017-07-20 21:10:54 -0700 (Thu, 20 Jul 2017)

Log Message

Get rid of IconDatabase related code in WebKit.
https://bugs.webkit.org/show_bug.cgi?id=174693

Reviewed by Tim Horton.

This leaves the C-API class but guts it.

No explanations of the other changes are needed.

* CMakeLists.txt:
* DerivedSources.make:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextGetIconDatabase):
(WKContextSetIconDatabasePath):
* UIProcess/API/C/WKIconDatabase.cpp:
(WKIconDatabaseSetIconDatabaseClient):
(WKIconDatabaseRetainIconForURL):
(WKIconDatabaseReleaseIconForURL):
(WKIconDatabaseSetIconDataForIconURL):
(WKIconDatabaseSetIconURLForPageURL):
(WKIconDatabaseCopyIconURLForPageURL):
(WKIconDatabaseCopyIconDataForPageURL):
(WKIconDatabaseEnableDatabaseCleanup):
(WKIconDatabaseRemoveAllIcons):
(WKIconDatabaseCheckIntegrityBeforeOpening):
(WKIconDatabaseClose):
* UIProcess/API/C/cg/WKIconDatabaseCG.cpp:
(WKIconDatabaseTryGetCGImageForURL):
(WKIconDatabaseTryCopyCGImageArrayForURL):
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformDefaultIconDatabasePath): Deleted.
* UIProcess/WebIconDatabase.cpp: Removed.
* UIProcess/WebIconDatabase.h:
(WebKit::WebIconDatabase::clearProcessPool): Deleted.
* UIProcess/WebIconDatabase.messages.in: Removed.
* UIProcess/WebIconDatabaseClient.cpp: Removed.
* UIProcess/WebIconDatabaseClient.h: Removed.
* UIProcess/WebProcessPool.cpp:
(WebKit::m_hiddenPageThrottlingTimer):
(WebKit::WebProcessPool::~WebProcessPool):
(WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):
(WebKit::WebProcessPool::createNewWebProcess):
(WebKit::WebProcessPool::setIconDatabasePath): Deleted.
(WebKit::WebProcessPool::iconDatabasePath): Deleted.
* UIProcess/WebProcessPool.h:
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::processWillShutDown):
(WebKit::WebProcessProxy::retainIconForPageURL): Deleted.
(WebKit::WebProcessProxy::releaseIconForPageURL): Deleted.
(WebKit::WebProcessProxy::releaseRemainingIconsForPageURLs): Deleted.
* UIProcess/WebProcessProxy.h:
* UIProcess/WebProcessProxy.messages.in:
* UIProcess/gtk/WebProcessPoolGtk.cpp:
(WebKit::WebProcessPool::platformDefaultIconDatabasePath): Deleted.
* UIProcess/wpe/WebProcessPoolWPE.cpp:
(WebKit::WebProcessPool::platformDefaultIconDatabasePath): Deleted.
* WebKit.xcodeproj/project.pbxproj:
* WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: Removed.
* WebProcess/IconDatabase/WebIconDatabaseProxy.h: Removed.
* WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in: Removed.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::getWebCoreStatistics):
* WebProcess/WebProcess.h:

Modified Paths

Removed Paths

Diff

Modified: trunk/Source/WebKit/CMakeLists.txt (219712 => 219713)


--- trunk/Source/WebKit/CMakeLists.txt	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/CMakeLists.txt	2017-07-21 04:10:54 UTC (rev 219713)
@@ -311,8 +311,6 @@
     UIProcess/WebGeolocationManagerProxy.cpp
     UIProcess/WebGeolocationProvider.cpp
     UIProcess/WebGrammarDetail.cpp
-    UIProcess/WebIconDatabase.cpp
-    UIProcess/WebIconDatabaseClient.cpp
     UIProcess/WebInspectorProxy.cpp
     UIProcess/WebInspectorUtilities.cpp
     UIProcess/WebNavigationState.cpp
@@ -463,8 +461,6 @@
     WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp
     WebProcess/Geolocation/WebGeolocationManager.cpp
 
-    WebProcess/IconDatabase/WebIconDatabaseProxy.cpp
-
     WebProcess/InjectedBundle/InjectedBundle.cpp
     WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp
     WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp
@@ -616,7 +612,6 @@
     UIProcess/WebCookieManagerProxy.messages.in
     UIProcess/WebFullScreenManagerProxy.messages.in
     UIProcess/WebGeolocationManagerProxy.messages.in
-    UIProcess/WebIconDatabase.messages.in
     UIProcess/WebInspectorProxy.messages.in
     UIProcess/WebPageProxy.messages.in
     UIProcess/WebPasteboardProxy.messages.in
@@ -652,8 +647,6 @@
 
     WebProcess/Geolocation/WebGeolocationManager.messages.in
 
-    WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in
-
     WebProcess/Network/webrtc/WebRTCMonitor.messages.in
     WebProcess/Network/webrtc/WebRTCResolver.messages.in
     WebProcess/Network/webrtc/WebRTCSocket.messages.in

Modified: trunk/Source/WebKit/ChangeLog (219712 => 219713)


--- trunk/Source/WebKit/ChangeLog	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/ChangeLog	2017-07-21 04:10:54 UTC (rev 219713)
@@ -1,3 +1,76 @@
+2017-07-20  Brady Eidson  <beid...@apple.com>
+
+        Get rid of IconDatabase related code in WebKit.
+        https://bugs.webkit.org/show_bug.cgi?id=174693
+
+        Reviewed by Tim Horton.
+
+        This leaves the C-API class but guts it.
+
+        No explanations of the other changes are needed.
+
+        * CMakeLists.txt:
+        * DerivedSources.make:
+        * Shared/WebProcessCreationParameters.cpp:
+        (WebKit::WebProcessCreationParameters::encode):
+        (WebKit::WebProcessCreationParameters::decode):
+        * Shared/WebProcessCreationParameters.h:
+        * UIProcess/API/C/WKContext.cpp:
+        (WKContextGetIconDatabase):
+        (WKContextSetIconDatabasePath):
+        * UIProcess/API/C/WKIconDatabase.cpp:
+        (WKIconDatabaseSetIconDatabaseClient):
+        (WKIconDatabaseRetainIconForURL):
+        (WKIconDatabaseReleaseIconForURL):
+        (WKIconDatabaseSetIconDataForIconURL):
+        (WKIconDatabaseSetIconURLForPageURL):
+        (WKIconDatabaseCopyIconURLForPageURL):
+        (WKIconDatabaseCopyIconDataForPageURL):
+        (WKIconDatabaseEnableDatabaseCleanup):
+        (WKIconDatabaseRemoveAllIcons):
+        (WKIconDatabaseCheckIntegrityBeforeOpening):
+        (WKIconDatabaseClose):
+        * UIProcess/API/C/cg/WKIconDatabaseCG.cpp:
+        (WKIconDatabaseTryGetCGImageForURL):
+        (WKIconDatabaseTryCopyCGImageArrayForURL):
+        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+        (WebKit::WebProcessPool::platformDefaultIconDatabasePath): Deleted.
+        * UIProcess/WebIconDatabase.cpp: Removed.
+        * UIProcess/WebIconDatabase.h:
+        (WebKit::WebIconDatabase::clearProcessPool): Deleted.
+        * UIProcess/WebIconDatabase.messages.in: Removed.
+        * UIProcess/WebIconDatabaseClient.cpp: Removed.
+        * UIProcess/WebIconDatabaseClient.h: Removed.
+        * UIProcess/WebProcessPool.cpp:
+        (WebKit::m_hiddenPageThrottlingTimer):
+        (WebKit::WebProcessPool::~WebProcessPool):
+        (WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):
+        (WebKit::WebProcessPool::createNewWebProcess):
+        (WebKit::WebProcessPool::setIconDatabasePath): Deleted.
+        (WebKit::WebProcessPool::iconDatabasePath): Deleted.
+        * UIProcess/WebProcessPool.h:
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::processWillShutDown):
+        (WebKit::WebProcessProxy::retainIconForPageURL): Deleted.
+        (WebKit::WebProcessProxy::releaseIconForPageURL): Deleted.
+        (WebKit::WebProcessProxy::releaseRemainingIconsForPageURLs): Deleted.
+        * UIProcess/WebProcessProxy.h:
+        * UIProcess/WebProcessProxy.messages.in:
+        * UIProcess/gtk/WebProcessPoolGtk.cpp:
+        (WebKit::WebProcessPool::platformDefaultIconDatabasePath): Deleted.
+        * UIProcess/wpe/WebProcessPoolWPE.cpp:
+        (WebKit::WebProcessPool::platformDefaultIconDatabasePath): Deleted.
+        * WebKit.xcodeproj/project.pbxproj:
+        * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: Removed.
+        * WebProcess/IconDatabase/WebIconDatabaseProxy.h: Removed.
+        * WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in: Removed.
+        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::WebProcess):
+        (WebKit::WebProcess::initializeWebProcess):
+        (WebKit::WebProcess::getWebCoreStatistics):
+        * WebProcess/WebProcess.h:
+
 2017-07-20  David Quesada  <david_ques...@apple.com>
 
         Add SPI to notify WKNavigationDelegate about client redirects

Modified: trunk/Source/WebKit/DerivedSources.make (219712 => 219713)


--- trunk/Source/WebKit/DerivedSources.make	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/DerivedSources.make	2017-07-21 04:10:54 UTC (rev 219713)
@@ -142,8 +142,6 @@
     WebGeolocationManagerProxy \
     WebIDBConnectionToClient \
     WebIDBConnectionToServer \
-    WebIconDatabase \
-    WebIconDatabaseProxy \
     WebInspector \
     WebInspectorInterruptDispatcher \
     WebInspectorProxy \

Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp (219712 => 219713)


--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -89,7 +89,6 @@
     encoder << shouldUseFontSmoothing;
     encoder << resourceLoadStatisticsEnabled;
     encoder << fontWhitelist;
-    encoder << iconDatabaseEnabled;
     encoder << terminationTimeout;
     encoder << languages;
     encoder << textCheckerState;
@@ -232,8 +231,6 @@
         return false;
     if (!decoder.decode(parameters.fontWhitelist))
         return false;
-    if (!decoder.decode(parameters.iconDatabaseEnabled))
-        return false;
     if (!decoder.decode(parameters.terminationTimeout))
         return false;
     if (!decoder.decode(parameters.languages))

Modified: trunk/Source/WebKit/Shared/WebProcessCreationParameters.h (219712 => 219713)


--- trunk/Source/WebKit/Shared/WebProcessCreationParameters.h	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/Shared/WebProcessCreationParameters.h	2017-07-21 04:10:54 UTC (rev 219713)
@@ -117,7 +117,6 @@
     bool shouldSuppressMemoryPressureHandler { false };
     bool shouldUseFontSmoothing { true };
     bool resourceLoadStatisticsEnabled { false };
-    bool iconDatabaseEnabled { false };
     bool fullKeyboardAccessEnabled { false };
     bool memoryCacheDisabled { false };
 

Modified: trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/API/C/WKContext.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -40,7 +40,6 @@
 #include "WKRetainPtr.h"
 #include "WebCertificateInfo.h"
 #include "WebContextInjectedBundleClient.h"
-#include "WebIconDatabase.h"
 #include "WebProcessPool.h"
 #include <wtf/RefPtr.h>
 #include <wtf/text/WTFString.h>
@@ -419,9 +418,9 @@
     return toAPI(toImpl(contextRef)->supplement<WebGeolocationManagerProxy>());
 }
 
-WKIconDatabaseRef WKContextGetIconDatabase(WKContextRef contextRef)
+WKIconDatabaseRef WKContextGetIconDatabase(WKContextRef)
 {
-    return toAPI(toImpl(contextRef)->iconDatabase());
+    return nullptr;
 }
 
 WKKeyValueStorageManagerRef WKContextGetKeyValueStorageManager(WKContextRef context)
@@ -459,9 +458,8 @@
     toImpl(contextRef)->stopMemorySampler();
 }
 
-void WKContextSetIconDatabasePath(WKContextRef contextRef, WKStringRef iconDatabasePath)
+void WKContextSetIconDatabasePath(WKContextRef, WKStringRef)
 {
-    toImpl(contextRef)->setIconDatabasePath(toImpl(iconDatabasePath)->string());
 }
 
 void WKContextAllowSpecificHTTPSCertificateForHost(WKContextRef contextRef, WKCertificateInfoRef certificateRef, WKStringRef hostRef)

Modified: trunk/Source/WebKit/UIProcess/API/C/WKIconDatabase.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/API/C/WKIconDatabase.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/API/C/WKIconDatabase.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -29,7 +29,6 @@
 #include "APIData.h"
 #include "WKAPICast.h"
 #include "WebIconDatabase.h"
-#include "WebIconDatabaseClient.h"
 
 using namespace WebKit;
 
@@ -38,59 +37,48 @@
     return toAPI(WebIconDatabase::APIType);
 }
 
-void WKIconDatabaseSetIconDatabaseClient(WKIconDatabaseRef iconDatabaseRef, const WKIconDatabaseClientBase* wkClient)
+void WKIconDatabaseSetIconDatabaseClient(WKIconDatabaseRef, const WKIconDatabaseClientBase*)
 {
-    toImpl(iconDatabaseRef)->setClient(std::make_unique<WebIconDatabaseClient>(wkClient));
 }
 
-void WKIconDatabaseRetainIconForURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef pageURLRef)
+void WKIconDatabaseRetainIconForURL(WKIconDatabaseRef, WKURLRef)
 {
-    toImpl(iconDatabaseRef)->retainIconForPageURL(toWTFString(pageURLRef));
 }
 
-void WKIconDatabaseReleaseIconForURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef pageURLRef)
+void WKIconDatabaseReleaseIconForURL(WKIconDatabaseRef, WKURLRef)
 {
-    toImpl(iconDatabaseRef)->releaseIconForPageURL(toWTFString(pageURLRef));
 }
 
-void WKIconDatabaseSetIconDataForIconURL(WKIconDatabaseRef iconDatabaseRef, WKDataRef iconDataRef, WKURLRef iconURLRef)
+void WKIconDatabaseSetIconDataForIconURL(WKIconDatabaseRef, WKDataRef, WKURLRef)
 {
-    toImpl(iconDatabaseRef)->setIconDataForIconURL(toImpl(iconDataRef)->dataReference(), toWTFString(iconURLRef));
 }
 
-void WKIconDatabaseSetIconURLForPageURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef iconURLRef, WKURLRef pageURLRef)
+void WKIconDatabaseSetIconURLForPageURL(WKIconDatabaseRef, WKURLRef, WKURLRef)
 {
-    toImpl(iconDatabaseRef)->setIconURLForPageURL(toWTFString(iconURLRef), toWTFString(pageURLRef));
 }
 
-WKURLRef WKIconDatabaseCopyIconURLForPageURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef pageURLRef)
+WKURLRef WKIconDatabaseCopyIconURLForPageURL(WKIconDatabaseRef, WKURLRef)
 {
-    String iconURLString;
-    toImpl(iconDatabaseRef)->synchronousIconURLForPageURL(toWTFString(pageURLRef), iconURLString);
-    return toCopiedURLAPI(iconURLString);
+    return nullptr;
 }
 
-WKDataRef WKIconDatabaseCopyIconDataForPageURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef pageURL)
+WKDataRef WKIconDatabaseCopyIconDataForPageURL(WKIconDatabaseRef, WKURLRef)
 {
-    return toAPI(toImpl(iconDatabaseRef)->iconDataForPageURL(toWTFString(pageURL)).leakRef());
+    return nullptr;
 }
 
-void WKIconDatabaseEnableDatabaseCleanup(WKIconDatabaseRef iconDatabaseRef)
+void WKIconDatabaseEnableDatabaseCleanup(WKIconDatabaseRef)
 {
-    toImpl(iconDatabaseRef)->enableDatabaseCleanup();
 }
 
-void WKIconDatabaseRemoveAllIcons(WKIconDatabaseRef iconDatabaseRef)
+void WKIconDatabaseRemoveAllIcons(WKIconDatabaseRef)
 {
-    toImpl(iconDatabaseRef)->removeAllIcons();
 }
 
-void WKIconDatabaseCheckIntegrityBeforeOpening(WKIconDatabaseRef iconDatabaseRef)
+void WKIconDatabaseCheckIntegrityBeforeOpening(WKIconDatabaseRef)
 {
-    toImpl(iconDatabaseRef)->checkIntegrityBeforeOpening();
 }
 
-void WKIconDatabaseClose(WKIconDatabaseRef iconDatabaseRef)
+void WKIconDatabaseClose(WKIconDatabaseRef)
 {
-    toImpl(iconDatabaseRef)->close();
 }

Modified: trunk/Source/WebKit/UIProcess/API/C/cairo/WKIconDatabaseCairo.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/API/C/cairo/WKIconDatabaseCairo.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/API/C/cairo/WKIconDatabaseCairo.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -34,5 +34,5 @@
 
 cairo_surface_t* WKIconDatabaseTryGetCairoSurfaceForURL(WKIconDatabaseRef iconDatabase, WKURLRef url)
 {
-    return toImpl(iconDatabase)->nativeImageForPageURL(toWTFString(url)).get();
+    return nullptr;
 }

Modified: trunk/Source/WebKit/UIProcess/API/C/cg/WKIconDatabaseCG.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/API/C/cg/WKIconDatabaseCG.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/API/C/cg/WKIconDatabaseCG.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -26,7 +26,6 @@
 #include "config.h"
 #include "WKIconDatabaseCG.h"
 
-#include "WebIconDatabase.h"
 #include "WKAPICast.h"
 #include "WKSharedAPICast.h"
 #include <WebCore/Image.h>
@@ -34,25 +33,12 @@
 using namespace WebKit;
 using namespace WebCore;
 
-CGImageRef WKIconDatabaseTryGetCGImageForURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef urlRef, WKSize size)
+CGImageRef WKIconDatabaseTryGetCGImageForURL(WKIconDatabaseRef, WKURLRef, WKSize)
 {
-    Image* image = toImpl(iconDatabaseRef)->imageForPageURL(toWTFString(urlRef));
-    return image ? image->nativeImageOfSize(IntSize(static_cast<int>(size.width), static_cast<int>(size.height))).get() : nullptr;
+    return nullptr;
 }
 
-CFArrayRef WKIconDatabaseTryCopyCGImageArrayForURL(WKIconDatabaseRef iconDatabaseRef, WKURLRef urlRef)
+CFArrayRef WKIconDatabaseTryCopyCGImageArrayForURL(WKIconDatabaseRef, WKURLRef)
 {
-    Image* image = toImpl(iconDatabaseRef)->imageForPageURL(toWTFString(urlRef));
-    if (!image)
-        return nullptr;
-
-    auto nativeImages = image->framesNativeImages();
-    if (!nativeImages.size())
-        return nullptr;
-    
-    CFMutableArrayRef array = CFArrayCreateMutable(nullptr, nativeImages.size(), &kCFTypeArrayCallBacks);
-    for (auto nativeImage : nativeImages)
-        CFArrayAppendValue(array, nativeImage.get());
-    
-    return static_cast<CFArrayRef>(array);
+    return nullptr;
 }

Modified: trunk/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -896,12 +896,12 @@
     // Use default if 0 is passed as parameter.
     String directoryPath = WebCore::stringFromFileSystemRepresentation(path);
     priv->faviconDatabaseDirectory = directoryPath.isEmpty()
-        ? priv->processPool->iconDatabasePath().utf8()
+        ? ""
         : directoryPath.utf8();
 
     // Build the full path to the icon database file on disk.
     GUniquePtr<gchar> faviconDatabasePath(g_build_filename(priv->faviconDatabaseDirectory.data(),
-        WebCore::IconDatabase::defaultDatabaseFilename().utf8().data(), nullptr));
+        "WebpageIcons.db", nullptr));
 
     // Setting the path will cause the icon database to be opened.
     webkitFaviconDatabaseOpen(priv->faviconDatabase.get(), WebCore::stringFromFileSystemRepresentation(faviconDatabasePath.get()));

Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm	2017-07-21 04:10:54 UTC (rev 219713)
@@ -505,11 +505,6 @@
 #endif
 }
 
-String WebProcessPool::platformDefaultIconDatabasePath() const
-{
-    return "";
-}
-
 bool WebProcessPool::omitPDFSupport()
 {
     // Since this is a "secret default" we don't bother registering it.

Deleted: trunk/Source/WebKit/UIProcess/WebIconDatabase.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebIconDatabase.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebIconDatabase.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -1,342 +0,0 @@
-/*
- * Copyright (C) 2011 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "WebIconDatabase.h"
-
-#include "APIIconDatabaseClient.h"
-#include "Logging.h"
-#include "WebIconDatabaseMessages.h"
-#include "WebIconDatabaseProxyMessages.h"
-#include "WebProcessPool.h"
-#include <WebCore/FileSystem.h>
-#include <WebCore/IconDatabase.h>
-#include <WebCore/Image.h>
-#include <WebCore/SharedBuffer.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-Ref<WebIconDatabase> WebIconDatabase::create(WebProcessPool* processPool)
-{
-    return adoptRef(*new WebIconDatabase(*processPool));
-}
-
-WebIconDatabase::~WebIconDatabase()
-{
-}
-
-WebIconDatabase::WebIconDatabase(WebProcessPool& processPool)
-    : m_processPool(&processPool)
-    , m_urlImportCompleted(false)
-    , m_databaseCleanupDisabled(false)
-    , m_shouldDerefWhenAppropriate(false)
-    , m_client(std::make_unique<API::IconDatabaseClient>())
-{
-    m_processPool->addMessageReceiver(Messages::WebIconDatabase::messageReceiverName(), *this);
-}
-
-void WebIconDatabase::invalidate()
-{
-    setGlobalIconDatabase(nullptr);
-}
-
-void WebIconDatabase::setDatabasePath(const String& path)
-{
-    if (isOpen()) {
-        LOG_ERROR("Icon database already has a path and is already open. We don't currently support changing its path and reopening.");
-        return;
-    }
-
-    m_iconDatabaseImpl = std::make_unique<IconDatabase>();
-    m_iconDatabaseImpl->setClient(this);
-    IconDatabase::delayDatabaseCleanup();
-    m_databaseCleanupDisabled = true;
-    m_iconDatabaseImpl->setEnabled(true);
-
-    // FIXME: WebIconDatabases are per-ProcessPool but ProcessPools's don't have their own notion of the current private browsing setting.
-    // As we clean up private browsing throughout the stack we need to clean it up here.
-    m_iconDatabaseImpl->setPrivateBrowsingEnabled(WebPreferences::anyPagesAreUsingPrivateBrowsing());
-
-    if (!m_iconDatabaseImpl->open(directoryName(path), pathGetFileName(path))) {
-        LOG_ERROR("Unable to open WebKit2 icon database on disk");
-        m_iconDatabaseImpl = nullptr;
-        setGlobalIconDatabase(nullptr);
-        IconDatabase::allowDatabaseCleanup();
-        m_databaseCleanupDisabled = false;
-    }
-    setGlobalIconDatabase(m_iconDatabaseImpl.get());
-}
-
-void WebIconDatabase::enableDatabaseCleanup()
-{
-    if (!m_iconDatabaseImpl) {
-        LOG_ERROR("Cannot enabled Icon Database cleanup - it hasn't been opened yet.");
-        return;
-    }
-
-    if (!m_databaseCleanupDisabled) {
-        LOG_ERROR("Attempt to enable database cleanup, but it's already enabled.");
-        ASSERT_NOT_REACHED();
-        return;
-    }
-
-    IconDatabase::allowDatabaseCleanup();
-    m_databaseCleanupDisabled = false;
-}
-
-void WebIconDatabase::retainIconForPageURL(const String& pageURL)
-{
-    if (m_iconDatabaseImpl)
-        m_iconDatabaseImpl->retainIconForPageURL(pageURL);
-}
-
-void WebIconDatabase::releaseIconForPageURL(const String& pageURL)
-{
-    if (m_iconDatabaseImpl)
-        m_iconDatabaseImpl->releaseIconForPageURL(pageURL);
-}
-
-void WebIconDatabase::setIconURLForPageURL(const String& iconURL, const String& pageURL)
-{
-    LOG(IconDatabase, "WK2 UIProcess setting icon URL %s for page URL %s", iconURL.ascii().data(), pageURL.ascii().data());
-    if (m_iconDatabaseImpl)
-        m_iconDatabaseImpl->setIconURLForPageURL(iconURL, pageURL);
-}
-
-void WebIconDatabase::setIconDataForIconURL(const IPC::DataReference& iconData, const String& iconURL)
-{
-    LOG(IconDatabase, "WK2 UIProcess setting icon data (%i bytes) for page URL %s", (int)iconData.size(), iconURL.ascii().data());
-    if (!m_iconDatabaseImpl)
-        return;
-    m_iconDatabaseImpl->setIconDataForIconURL(SharedBuffer::create(iconData.data(), iconData.size()).ptr(), iconURL);
-}
-
-void WebIconDatabase::synchronousIconDataForPageURL(const String&, IPC::DataReference& iconData)
-{
-    iconData = IPC::DataReference();
-}
-
-void WebIconDatabase::synchronousIconURLForPageURL(const String& pageURL, String& iconURL)
-{
-    if (!m_iconDatabaseImpl) {
-        iconURL = String();
-        return;
-    }
-    iconURL = m_iconDatabaseImpl->synchronousIconURLForPageURL(pageURL);
-}
-
-void WebIconDatabase::synchronousIconDataKnownForIconURL(const String&, bool& iconDataKnown) const
-{
-    iconDataKnown = false;
-}
-
-void WebIconDatabase::synchronousLoadDecisionForIconURL(const String&, int& loadDecision) const
-{
-    loadDecision = static_cast<int>(IconLoadNo);
-}
-
-void WebIconDatabase::getLoadDecisionForIconURL(const String& iconURL, uint64_t callbackID)
-{
-    LOG(IconDatabase, "WK2 UIProcess getting load decision for icon URL %s with callback ID %lli", iconURL.ascii().data(), static_cast<long long>(callbackID));
-
-    if (!m_processPool)
-        return;
-
-    if (!m_iconDatabaseImpl || !m_iconDatabaseImpl->isOpen() || iconURL.isEmpty()) {
-        // FIXME (Multi-WebProcess): <rdar://problem/12240223> We need to know which connection to send this message to.
-        m_processPool->sendToAllProcesses(Messages::WebIconDatabaseProxy::ReceivedIconLoadDecision(static_cast<int>(IconLoadNo), callbackID));
-        return;
-    }
-    
-    // If the decision hasn't been read from disk yet, set this url and callback ID aside to be notifed later
-    IconLoadDecision decision = m_iconDatabaseImpl->synchronousLoadDecisionForIconURL(iconURL, 0);
-    if (decision == IconLoadUnknown) {
-        // We should never get an unknown load decision after the URL import has completed.
-        ASSERT(!m_urlImportCompleted);
-        
-        m_pendingLoadDecisionURLMap.set(callbackID, iconURL);
-        return;
-    }
-
-    // FIXME (Multi-WebProcess): <rdar://problem/12240223> We need to know which connection to send this message to.
-    m_processPool->sendToAllProcesses(Messages::WebIconDatabaseProxy::ReceivedIconLoadDecision((int)decision, callbackID));
-}
-
-void WebIconDatabase::didReceiveIconForPageURL(const String& pageURL)
-{
-    notifyIconDataReadyForPageURL(pageURL);
-}
-
-Image* WebIconDatabase::imageForPageURL(const String& pageURL, const IntSize& iconSize)
-{
-    if (!m_processPool || !m_iconDatabaseImpl || !m_iconDatabaseImpl->isOpen() || pageURL.isEmpty())
-        return nullptr;
-
-    // The WebCore IconDatabase ignores the passed in size parameter.
-    // If that changes we'll need to rethink how this API is exposed.
-    return m_iconDatabaseImpl->synchronousIconForPageURL(pageURL, iconSize);
-}
-
-NativeImagePtr WebIconDatabase::nativeImageForPageURL(const String& pageURL, const IntSize& iconSize)
-{
-    if (!m_processPool || !m_iconDatabaseImpl || !m_iconDatabaseImpl->isOpen() || pageURL.isEmpty())
-        return nullptr;
-
-    return m_iconDatabaseImpl->synchronousNativeIconForPageURL(pageURL, iconSize);
-}
-
-bool WebIconDatabase::isOpen()
-{
-    return m_iconDatabaseImpl && m_iconDatabaseImpl->isOpen();
-}
-
-bool WebIconDatabase::isUrlImportCompleted()
-{
-    return m_urlImportCompleted;
-}
-
-void WebIconDatabase::removeAllIcons()
-{
-    m_iconDatabaseImpl->removeAllIcons();
-}
-
-void WebIconDatabase::checkIntegrityBeforeOpening()
-{
-    IconDatabase::checkIntegrityBeforeOpening();
-}
-
-void WebIconDatabase::close()
-{
-    if (m_iconDatabaseImpl)
-        m_iconDatabaseImpl->close();
-}
-
-void WebIconDatabase::setClient(std::unique_ptr<API::IconDatabaseClient>&& client)
-{
-    if (!client)
-        m_client = std::make_unique<API::IconDatabaseClient>();
-    else
-        m_client = WTFMove(client);
-}
-
-// WebCore::IconDatabaseClient
-
-void WebIconDatabase::didImportIconURLForPageURL(const String& pageURL)
-{
-    didChangeIconForPageURL(pageURL);
-}
-
-void WebIconDatabase::didImportIconDataForPageURL(const String& pageURL)
-{
-    notifyIconDataReadyForPageURL(pageURL);
-}
-
-void WebIconDatabase::didChangeIconForPageURL(const String& pageURL)
-{
-    m_client->didChangeIconForPageURL(*this, pageURL);
-}
-
-void WebIconDatabase::didRemoveAllIcons()
-{
-    m_client->didRemoveAllIcons(*this);
-}
-
-void WebIconDatabase::didFinishURLImport()
-{
-    if (!m_processPool)
-        return;
-
-    ASSERT(!m_urlImportCompleted);
-
-    LOG(IconDatabase, "WK2 UIProcess URL import complete, notifying all %i pending page URL load decisions", m_pendingLoadDecisionURLMap.size());
-    
-    for (auto& slot : m_pendingLoadDecisionURLMap) {
-        LOG(IconDatabase, "WK2 UIProcess performing delayed callback on callback ID %i for page url %s", (int)slot.key, slot.value.ascii().data());
-        IconLoadDecision decision = m_iconDatabaseImpl->synchronousLoadDecisionForIconURL(slot.value, nullptr);
-
-        // Decisions should never be unknown after the inital import is complete.
-        ASSERT(decision != IconLoadUnknown);
-
-        // FIXME (Multi-WebProcess): <rdar://problem/12240223> We need to know which connection to send this message to.
-        m_processPool->sendToAllProcesses(Messages::WebIconDatabaseProxy::ReceivedIconLoadDecision(static_cast<int>(decision), slot.key));
-    }
-
-    m_pendingLoadDecisionURLMap.clear();
-
-    m_urlImportCompleted = true;
-}
-
-void WebIconDatabase::didClose()
-{
-    if (!m_shouldDerefWhenAppropriate)
-        return;
-
-    deref();
-}
-
-void WebIconDatabase::derefWhenAppropriate()
-{
-    if (m_iconDatabaseImpl && m_iconDatabaseImpl->isOpen()) {
-        m_shouldDerefWhenAppropriate = true;
-        return;
-    }
-
-    deref();
-}
-
-void WebIconDatabase::notifyIconDataReadyForPageURL(const String& pageURL)
-{
-    m_client->iconDataReadyForPageURL(*this, pageURL);
-    didChangeIconForPageURL(pageURL);
-}
-
-void WebIconDatabase::setPrivateBrowsingEnabled(bool privateBrowsingEnabled)
-{
-    if (m_iconDatabaseImpl)
-        m_iconDatabaseImpl->setPrivateBrowsingEnabled(privateBrowsingEnabled);
-}
-
-RefPtr<API::Data> WebIconDatabase::iconDataForPageURL(const String& pageURL)
-{
-    auto* image = imageForPageURL(pageURL);
-    if (!image)
-        return nullptr;
-
-    SharedBuffer* sharedBuffer = image->data();
-    if (!sharedBuffer)
-        return nullptr;
-
-    // Balanced by deref() below.
-    sharedBuffer->ref();
-    return API::Data::createWithoutCopying(reinterpret_cast<const unsigned char*>(sharedBuffer->data()), sharedBuffer->size(),
-        [](unsigned char*, const void* untypedSharedBuffer) {
-            // Balanced by ref() above.
-            static_cast<SharedBuffer*>(const_cast<void*>(untypedSharedBuffer))->deref();
-        }, sharedBuffer);
-}
-
-} // namespace WebKit

Modified: trunk/Source/WebKit/UIProcess/WebIconDatabase.h (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebIconDatabase.h	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebIconDatabase.h	2017-07-21 04:10:54 UTC (rev 219713)
@@ -23,101 +23,13 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef WebIconDatabase_h
-#define WebIconDatabase_h
+#pragma once
 
 #include "APIObject.h"
-#include "Connection.h"
-#include "WebIconDatabaseClient.h"
-#include <WebCore/IconDatabaseClient.h>
-#include <WebCore/IntSize.h>
-#include <WebCore/NativeImage.h>
 
-namespace API {
-class Data;
-class IconDatabaseClient;
-}
-
-namespace WebCore {
-class IconDatabase;
-class Image;
-}
-
 namespace WebKit {
 
-class WebProcessPool;
-
-class WebIconDatabase : public API::ObjectImpl<API::Object::Type::IconDatabase>, private WebCore::IconDatabaseClient, private IPC::MessageReceiver {
-public:
-    static Ref<WebIconDatabase> create(WebProcessPool*);
-    virtual ~WebIconDatabase();
-
-    void invalidate();
-    void clearProcessPool() { m_processPool = nullptr; }
-    void setDatabasePath(const String&);
-    void enableDatabaseCleanup();
-
-    void retainIconForPageURL(const String&);
-    void releaseIconForPageURL(const String&);
-    void setIconURLForPageURL(const String&, const String&);
-    void setIconDataForIconURL(const IPC::DataReference&, const String&);
-
-    void synchronousIconDataForPageURL(const String&, IPC::DataReference&);
-    void synchronousIconURLForPageURL(const String&, String&);
-    void synchronousIconDataKnownForIconURL(const String&, bool&) const;
-    void synchronousLoadDecisionForIconURL(const String&, int&) const;
-
-    void getLoadDecisionForIconURL(const String&, uint64_t callbackID);
-    void didReceiveIconForPageURL(const String&);
-
-    WebCore::Image* imageForPageURL(const String&, const WebCore::IntSize& iconSize = WebCore::IntSize(32, 32));
-    WebCore::NativeImagePtr nativeImageForPageURL(const String&, const WebCore::IntSize& iconSize = WebCore::IntSize(32, 32));
-    RefPtr<API::Data> iconDataForPageURL(const String& pageURL);
-
-    bool isOpen();
-    bool isUrlImportCompleted();
-
-    void removeAllIcons();
-    void checkIntegrityBeforeOpening();
-    void close();
-
-    void setClient(std::unique_ptr<API::IconDatabaseClient>&&);
-
-    void setPrivateBrowsingEnabled(bool);
-
-    // Called when the WebProcessPool is through with this WebIconDatabase but the
-    // WebCore::IconDatabase possibly isn't done shutting down.
-    // In that case this WebIconDatabase will deref() itself when the time is right.
-    void derefWhenAppropriate();
-
-private:
-    explicit WebIconDatabase(WebProcessPool&);
-
-    // WebCore::IconDatabaseClient
-    void didImportIconURLForPageURL(const String&) override;
-    void didImportIconDataForPageURL(const String&) override;
-    void didChangeIconForPageURL(const String&) override;
-    void didRemoveAllIcons() override;
-    void didFinishURLImport() override;
-    void didClose() override;
-
-    // IPC::MessageReceiver
-    void didReceiveMessage(IPC::Connection&, IPC::Decoder&) override;
-    void didReceiveSyncMessage(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder>&) override;
-
-    void notifyIconDataReadyForPageURL(const String&);
-
-    WebProcessPool* m_processPool;
-
-    std::unique_ptr<WebCore::IconDatabase> m_iconDatabaseImpl;
-    bool m_urlImportCompleted;
-    bool m_databaseCleanupDisabled;
-    bool m_shouldDerefWhenAppropriate;
-    HashMap<uint64_t, String> m_pendingLoadDecisionURLMap;
-
-    std::unique_ptr<API::IconDatabaseClient> m_client;
+class WebIconDatabase : public API::ObjectImpl<API::Object::Type::IconDatabase> {
 };
 
 } // namespace WebKit
-
-#endif // WebIconDatabase_h

Deleted: trunk/Source/WebKit/UIProcess/WebIconDatabase.messages.in (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebIconDatabase.messages.in	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebIconDatabase.messages.in	2017-07-21 04:10:54 UTC (rev 219713)
@@ -1,34 +0,0 @@
-# Copyright (C) 2011 Apple Inc. All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1.  Redistributions of source code must retain the above copyright
-#     notice, this list of conditions and the following disclaimer.
-# 2.  Redistributions in binary form must reproduce the above copyright
-#     notice, this list of conditions and the following disclaimer in the
-#     documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND
-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR
-# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-messages -> WebIconDatabase {
-    SetIconURLForPageURL(String iconURL, String pageURL)
-    SetIconDataForIconURL(IPC::DataReference iconData, String iconURL)
-    
-    SynchronousIconDataForPageURL(String pageURL) -> (IPC::DataReference iconData)
-    SynchronousIconURLForPageURL(String pageURL) -> (String iconURL)
-    SynchronousIconDataKnownForIconURL(String iconURL) -> (bool dataKnown)
-    SynchronousLoadDecisionForIconURL(String iconURL) -> (int loadDecision)
-    
-    GetLoadDecisionForIconURL(String iconURL, uint64_t callbackID)
-    DidReceiveIconForPageURL(String pageURL)
-}

Deleted: trunk/Source/WebKit/UIProcess/WebIconDatabaseClient.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebIconDatabaseClient.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebIconDatabaseClient.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -1,64 +0,0 @@
-/*
- * Copyright (C) 2011 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "WebIconDatabaseClient.h"
-
-#include "WKAPICast.h"
-#include "WKSharedAPICast.h"
-#include "WebIconDatabase.h"
-
-namespace WebKit {
-
-WebIconDatabaseClient::WebIconDatabaseClient(const WKIconDatabaseClientBase* wkClient)
-{
-    initialize(wkClient);
-}
-
-void WebIconDatabaseClient::didChangeIconForPageURL(WebIconDatabase& iconDatabase, const String& pageURL)
-{
-    if (!m_client.didChangeIconForPageURL)
-        return;
-
-    m_client.didChangeIconForPageURL(toAPI(&iconDatabase), toAPI(API::URL::create(pageURL).ptr()), m_client.base.clientInfo);
-}
-
-void WebIconDatabaseClient::didRemoveAllIcons(WebIconDatabase& iconDatabase)
-{
-    if (!m_client.didRemoveAllIcons)
-        return;
-
-    m_client.didRemoveAllIcons(toAPI(&iconDatabase),  m_client.base.clientInfo);
-}
-
-void WebIconDatabaseClient::iconDataReadyForPageURL(WebIconDatabase& iconDatabase, const String& pageURL)
-{
-    if (!m_client.iconDataReadyForPageURL)
-        return;
-
-    m_client.iconDataReadyForPageURL(toAPI(&iconDatabase), toAPI(API::URL::create(pageURL).ptr()), m_client.base.clientInfo);
-}
-
-} // namespace WebKit

Deleted: trunk/Source/WebKit/UIProcess/WebIconDatabaseClient.h (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebIconDatabaseClient.h	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebIconDatabaseClient.h	2017-07-21 04:10:54 UTC (rev 219713)
@@ -1,55 +0,0 @@
-/*
- * Copyright (C) 2011 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef WebIconDatabaseClient_h
-#define WebIconDatabaseClient_h
-
-#include "APIClient.h"
-#include "APIIconDatabaseClient.h"
-#include "WKIconDatabase.h"
-
-namespace API {
-class URL;
-template<> struct ClientTraits<WKIconDatabaseClientBase> {
-    typedef std::tuple<WKIconDatabaseClientV0, WKIconDatabaseClientV1> Versions;
-};
-}
-
-namespace WebKit {
-
-class WebIconDatabase;
-
-class WebIconDatabaseClient : public API::IconDatabaseClient, API::Client<WKIconDatabaseClientBase> {
-public:
-    explicit WebIconDatabaseClient(const WKIconDatabaseClientBase*);
-
-    void didChangeIconForPageURL(WebIconDatabase&, const String&) override;
-    void didRemoveAllIcons(WebIconDatabase&) override;
-    void iconDataReadyForPageURL(WebIconDatabase&, const String&) override;
-};
-
-} // namespace WebKit
-
-#endif // WebIconDatabaseClient_h

Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -57,7 +57,6 @@
 #include "WebCookieManagerProxy.h"
 #include "WebCoreArgumentCoders.h"
 #include "WebGeolocationManagerProxy.h"
-#include "WebIconDatabase.h"
 #include "WebKit2Initialize.h"
 #include "WebMemorySampler.h"
 #include "WebNotificationManagerProxy.h"
@@ -258,8 +257,6 @@
     addMessageReceiver(Messages::WebProcessPool::messageReceiverName(), *this);
 
     // NOTE: These sub-objects must be initialized after m_messageReceiverMap..
-    m_iconDatabase = WebIconDatabase::create(this);
-
     addSupplement<WebCookieManagerProxy>();
     addSupplement<WebGeolocationManagerProxy>();
     addSupplement<WebNotificationManagerProxy>();
@@ -305,11 +302,6 @@
         supplement->clearProcessPool();
     }
 
-    m_iconDatabase->invalidate();
-    m_iconDatabase->clearProcessPool();
-    WebIconDatabase* rawIconDatabase = m_iconDatabase.leakRef();
-    rawIconDatabase->derefWhenAppropriate();
-
     invalidateCallbackMap(m_dictionaryCallbacks, CallbackBase::Error::OwnerWasInvalidated);
 
     platformInvalidateContext();
@@ -595,8 +587,6 @@
 
 void WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled(bool privateBrowsingEnabled)
 {
-    m_iconDatabase->setPrivateBrowsingEnabled(privateBrowsingEnabled);
-
     if (networkProcess()) {
         if (privateBrowsingEnabled)
             networkProcess()->send(Messages::NetworkProcess::EnsurePrivateBrowsingSession({SessionID::legacyPrivateSessionID(), { }, { }, { }}), 0);
@@ -726,8 +716,6 @@
     parameters.shouldAlwaysUseComplexTextCodePath = m_alwaysUsesComplexTextCodePath;
     parameters.shouldUseFontSmoothing = m_shouldUseFontSmoothing;
 
-    parameters.iconDatabaseEnabled = !iconDatabasePath().isEmpty();
-
     parameters.terminationTimeout = 0_s;
 
     parameters.textCheckerState = TextChecker::state();
@@ -1290,23 +1278,6 @@
     sendToAllProcesses(Messages::WebProcess::StopMemorySampler());
 }
 
-void WebProcessPool::setIconDatabasePath(const String& path)
-{
-    m_overrideIconDatabasePath = path;
-    if (!m_overrideIconDatabasePath.isEmpty()) {
-        // This implicitly enables the database on UI process side.
-        m_iconDatabase->setDatabasePath(path);
-    }
-}
-
-String WebProcessPool::iconDatabasePath() const
-{
-    if (!m_overrideIconDatabasePath.isNull())
-        return m_overrideIconDatabasePath;
-
-    return platformDefaultIconDatabasePath();
-}
-
 void WebProcessPool::useTestingNetworkSession()
 {
     ASSERT(m_processes.isEmpty());

Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.h (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebProcessPool.h	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.h	2017-07-21 04:10:54 UTC (rev 219713)
@@ -89,7 +89,6 @@
 class PerActivityStateCPUUsageSampler;
 class WebAutomationSession;
 class WebContextSupplement;
-class WebIconDatabase;
 class WebPageGroup;
 class WebPageProxy;
 struct NetworkProcessCreationParameters;
@@ -244,8 +243,6 @@
 
     API::CustomProtocolManagerClient& customProtocolManagerClient() const { return *m_customProtocolManagerClient; }
 
-    WebIconDatabase* iconDatabase() const { return m_iconDatabase.get(); }
-
     struct Statistics {
         unsigned wkViewCount;
         unsigned wkPageCount;
@@ -253,8 +250,6 @@
     };
     static Statistics& statistics();    
 
-    void setIconDatabasePath(const String&);
-    String iconDatabasePath() const;
     void setCookieStorageDirectory(const String& dir) { m_overrideCookieStorageDirectory = dir; }
 
     void useTestingNetworkSession();
@@ -450,8 +445,6 @@
     static void languageChanged(void* context);
     void languageChanged();
 
-    String platformDefaultIconDatabasePath() const;
-
 #if PLATFORM(IOS)
     String cookieStorageDirectory() const;
 #endif
@@ -530,8 +523,6 @@
     bool m_memorySamplerEnabled;
     double m_memorySamplerInterval;
 
-    RefPtr<WebIconDatabase> m_iconDatabase;
-
     const Ref<API::WebsiteDataStore> m_websiteDataStore;
 
     typedef HashMap<const char*, RefPtr<WebContextSupplement>, PtrHash<const char*>> WebContextSupplementMap;
@@ -554,7 +545,6 @@
     std::unique_ptr<PerActivityStateCPUUsageSampler> m_perActivityStateCPUUsageSampler;
 #endif
 
-    String m_overrideIconDatabasePath;
     String m_overrideCookieStorageDirectory;
 
     bool m_shouldUseTestingNetworkSession;

Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -38,7 +38,6 @@
 #include "TextCheckerState.h"
 #include "UserData.h"
 #include "WebBackForwardListItem.h"
-#include "WebIconDatabase.h"
 #include "WebInspectorUtilities.h"
 #include "WebNavigationDataStore.h"
 #include "WebNotificationManagerProxy.h"
@@ -167,8 +166,6 @@
 
     for (auto& page : m_pageMap.values())
         page->webProcessWillShutDown();
-
-    releaseRemainingIconsForPageURLs();
 }
 
 void WebProcessProxy::shutDown()
@@ -579,53 +576,6 @@
 }
 #endif // ENABLE(DATABASE_PROCESS)
 
-void WebProcessProxy::retainIconForPageURL(const String& pageURL)
-{
-    WebIconDatabase* iconDatabase = processPool().iconDatabase();
-    if (!iconDatabase || pageURL.isEmpty())
-        return;
-
-    // Track retain counts so we can release them if the WebProcess terminates early.
-    auto result = m_pageURLRetainCountMap.add(pageURL, 1);
-    if (!result.isNewEntry)
-        ++result.iterator->value;
-
-    iconDatabase->retainIconForPageURL(pageURL);
-}
-
-void WebProcessProxy::releaseIconForPageURL(const String& pageURL)
-{
-    WebIconDatabase* iconDatabase = processPool().iconDatabase();
-    if (!iconDatabase || pageURL.isEmpty())
-        return;
-
-    // Track retain counts so we can release them if the WebProcess terminates early.
-    auto result = m_pageURLRetainCountMap.find(pageURL);
-    if (result == m_pageURLRetainCountMap.end())
-        return;
-
-    --result->value;
-    if (!result->value)
-        m_pageURLRetainCountMap.remove(result);
-
-    iconDatabase->releaseIconForPageURL(pageURL);
-}
-
-void WebProcessProxy::releaseRemainingIconsForPageURLs()
-{
-    WebIconDatabase* iconDatabase = processPool().iconDatabase();
-    if (!iconDatabase)
-        return;
-
-    for (auto& entry : m_pageURLRetainCountMap) {
-        uint64_t count = entry.value;
-        for (uint64_t i = 0; i < count; ++i)
-            iconDatabase->releaseIconForPageURL(entry.key);
-    }
-
-    m_pageURLRetainCountMap.clear();
-}
-
 #if !PLATFORM(COCOA)
 bool WebProcessProxy::platformIsBeingDebugged() const
 {

Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.h (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebProcessProxy.h	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.h	2017-07-21 04:10:54 UTC (rev 219713)
@@ -218,10 +218,6 @@
     void getDatabaseProcessConnection(Ref<Messages::WebProcessProxy::GetDatabaseProcessConnection::DelayedReply>&&);
 #endif
 
-    void retainIconForPageURL(const String& pageURL);
-    void releaseIconForPageURL(const String& pageURL);
-    void releaseRemainingIconsForPageURLs();
-
     bool platformIsBeingDebugged() const;
 
     static const HashSet<String>& platformPathsWithAssumedReadAccess();

Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in	2017-07-21 04:10:54 UTC (rev 219713)
@@ -51,9 +51,6 @@
 
     StopResponsivenessTimer()
 
-    RetainIconForPageURL(String pageURL)
-    ReleaseIconForPageURL(String pageURL)
-
     DidReceiveMainThreadPing()
     DidReceiveBackgroundResponsivenessPing()
 

Modified: trunk/Source/WebKit/UIProcess/gtk/WebProcessPoolGtk.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/gtk/WebProcessPoolGtk.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/gtk/WebProcessPoolGtk.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -106,12 +106,6 @@
     return API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory();
 }
 
-String WebProcessPool::platformDefaultIconDatabasePath() const
-{
-    GUniquePtr<gchar> databaseDirectory(g_build_filename(g_get_user_cache_dir(), "webkitgtk", "icondatabase", nullptr));
-    return WebCore::stringFromFileSystemRepresentation(databaseDirectory.get());
-}
-
 String WebProcessPool::legacyPlatformDefaultLocalStorageDirectory()
 {
     return API::WebsiteDataStore::defaultLocalStorageDirectory();

Modified: trunk/Source/WebKit/UIProcess/wpe/WebProcessPoolWPE.cpp (219712 => 219713)


--- trunk/Source/WebKit/UIProcess/wpe/WebProcessPoolWPE.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/UIProcess/wpe/WebProcessPoolWPE.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -111,12 +111,6 @@
     return WebCore::stringFromFileSystemRepresentation(indexedDBDatabaseDirectory.get());
 }
 
-String WebProcessPool::platformDefaultIconDatabasePath() const
-{
-    GUniquePtr<gchar> databaseDirectory(g_build_filename(g_get_user_cache_dir(), "wpe", "icondatabase", nullptr));
-    return WebCore::stringFromFileSystemRepresentation(databaseDirectory.get());
-}
-
 String WebProcessPool::legacyPlatformDefaultLocalStorageDirectory()
 {
     GUniquePtr<gchar> storageDirectory(g_build_filename(g_get_user_data_dir(), "wpe", "localstorage", nullptr));

Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (219712 => 219713)


--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2017-07-21 04:10:54 UTC (rev 219713)
@@ -937,10 +937,6 @@
 		510FBB9B1288C95E00AFFDF4 /* WebContextMenuItemData.h in Headers */ = {isa = PBXBuildFile; fileRef = 510FBB991288C95E00AFFDF4 /* WebContextMenuItemData.h */; };
 		5110AE0C133C16CB0072717A /* WKIconDatabase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5110AE0A133C16CB0072717A /* WKIconDatabase.cpp */; };
 		5110AE0D133C16CB0072717A /* WKIconDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 5110AE0B133C16CB0072717A /* WKIconDatabase.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		511B24A6132E095700065A0C /* WebIconDatabaseProxy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511B24A4132E095700065A0C /* WebIconDatabaseProxy.cpp */; };
-		511B24A7132E095700065A0C /* WebIconDatabaseProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 511B24A5132E095700065A0C /* WebIconDatabaseProxy.h */; };
-		511B24AA132E097200065A0C /* WebIconDatabase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511B24A8132E097200065A0C /* WebIconDatabase.cpp */; };
-		511B24AB132E097200065A0C /* WebIconDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 511B24A9132E097200065A0C /* WebIconDatabase.h */; };
 		511F7D411EB1BCF500E47B83 /* WebsiteDataStoreParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 511F7D401EB1BCEE00E47B83 /* WebsiteDataStoreParameters.h */; };
 		511F7D421EB1BCF800E47B83 /* WebsiteDataStoreParameters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511F7D3F1EB1BCEE00E47B83 /* WebsiteDataStoreParameters.cpp */; };
 		511F8A7B138B460900A95F44 /* SecItemShimLibrary.h in Headers */ = {isa = PBXBuildFile; fileRef = 511F8A77138B460900A95F44 /* SecItemShimLibrary.h */; };
@@ -1023,8 +1019,6 @@
 		517CF0E4163A486C00C2950E /* NetworkProcessConnectionMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 517CF0E2163A486C00C2950E /* NetworkProcessConnectionMessages.h */; };
 		517DD5BE180DA7D30081660B /* DatabaseProcessProxy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 517DD5BC180DA7D30081660B /* DatabaseProcessProxy.cpp */; };
 		517DD5BF180DA7D30081660B /* DatabaseProcessProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 517DD5BD180DA7D30081660B /* DatabaseProcessProxy.h */; };
-		51834592134532E90092B696 /* WebIconDatabaseClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51834590134532E80092B696 /* WebIconDatabaseClient.cpp */; };
-		51834593134532E90092B696 /* WebIconDatabaseClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 51834591134532E80092B696 /* WebIconDatabaseClient.h */; };
 		5183DDEC1630BDFC008BE5C7 /* NetworkProcessConnection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5105B0D4162F7A7A00E27709 /* NetworkProcessConnection.cpp */; };
 		51871B5B127CB89D00F76232 /* WebContextMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51871B59127CB89D00F76232 /* WebContextMenu.cpp */; };
 		51871B5C127CB89D00F76232 /* WebContextMenu.h in Headers */ = {isa = PBXBuildFile; fileRef = 51871B5A127CB89D00F76232 /* WebContextMenu.h */; };
@@ -1060,10 +1054,6 @@
 		51CD1C651B34B9D400142CA5 /* WKSecurityOrigin.h in Headers */ = {isa = PBXBuildFile; fileRef = 51CD1C5F1B34B9C900142CA5 /* WKSecurityOrigin.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		51CD1C661B34B9DC00142CA5 /* WKSecurityOrigin.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51CD1C601B34B9C900142CA5 /* WKSecurityOrigin.mm */; };
 		51CD1C671B34B9DF00142CA5 /* WKSecurityOriginInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 51CD1C611B34B9C900142CA5 /* WKSecurityOriginInternal.h */; };
-		51D02F64132EC5B900BEAA96 /* WebIconDatabaseMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D02F63132EC5B900BEAA96 /* WebIconDatabaseMessageReceiver.cpp */; };
-		51D02F6A132EC73700BEAA96 /* WebIconDatabaseMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 51D02F67132EC73700BEAA96 /* WebIconDatabaseMessages.h */; };
-		51D02F6B132EC73700BEAA96 /* WebIconDatabaseProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D02F68132EC73700BEAA96 /* WebIconDatabaseProxyMessageReceiver.cpp */; };
-		51D02F6C132EC73700BEAA96 /* WebIconDatabaseProxyMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 51D02F69132EC73700BEAA96 /* WebIconDatabaseProxyMessages.h */; };
 		51D124231E6D34A1002B2820 /* WebURLSchemeTaskProxy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D124211E6D349A002B2820 /* WebURLSchemeTaskProxy.cpp */; };
 		51D124281E6D3F5D002B2820 /* WebURLSchemeHandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D124241E6D3CC3002B2820 /* WebURLSchemeHandler.cpp */; };
 		51D1242C1E6D41FD002B2820 /* WebURLSchemeHandlerProxy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D1242A1E6D41BC002B2820 /* WebURLSchemeHandlerProxy.cpp */; };
@@ -3186,10 +3176,6 @@
 		510FBB991288C95E00AFFDF4 /* WebContextMenuItemData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebContextMenuItemData.h; sourceTree = "<group>"; };
 		5110AE0A133C16CB0072717A /* WKIconDatabase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKIconDatabase.cpp; sourceTree = "<group>"; };
 		5110AE0B133C16CB0072717A /* WKIconDatabase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKIconDatabase.h; sourceTree = "<group>"; };
-		511B24A4132E095700065A0C /* WebIconDatabaseProxy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebIconDatabaseProxy.cpp; path = IconDatabase/WebIconDatabaseProxy.cpp; sourceTree = "<group>"; };
-		511B24A5132E095700065A0C /* WebIconDatabaseProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebIconDatabaseProxy.h; path = IconDatabase/WebIconDatabaseProxy.h; sourceTree = "<group>"; };
-		511B24A8132E097200065A0C /* WebIconDatabase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebIconDatabase.cpp; sourceTree = "<group>"; };
-		511B24A9132E097200065A0C /* WebIconDatabase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconDatabase.h; sourceTree = "<group>"; };
 		511F7D3F1EB1BCEE00E47B83 /* WebsiteDataStoreParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebsiteDataStoreParameters.cpp; sourceTree = "<group>"; };
 		511F7D401EB1BCEE00E47B83 /* WebsiteDataStoreParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebsiteDataStoreParameters.h; sourceTree = "<group>"; };
 		511F8A77138B460900A95F44 /* SecItemShimLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SecItemShimLibrary.h; path = ../../WebProcess/mac/SecItemShimLibrary.h; sourceTree = "<group>"; };
@@ -3270,10 +3256,7 @@
 		517CF0E2163A486C00C2950E /* NetworkProcessConnectionMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkProcessConnectionMessages.h; sourceTree = "<group>"; };
 		517DD5BC180DA7D30081660B /* DatabaseProcessProxy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DatabaseProcessProxy.cpp; path = Databases/DatabaseProcessProxy.cpp; sourceTree = "<group>"; };
 		517DD5BD180DA7D30081660B /* DatabaseProcessProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DatabaseProcessProxy.h; path = Databases/DatabaseProcessProxy.h; sourceTree = "<group>"; };
-		51834590134532E80092B696 /* WebIconDatabaseClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebIconDatabaseClient.cpp; sourceTree = "<group>"; };
-		51834591134532E80092B696 /* WebIconDatabaseClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconDatabaseClient.h; sourceTree = "<group>"; };
 		5183B3931379F85C00E8754E /* Shim.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Shim.xcconfig; sourceTree = "<group>"; };
-		5184BC4A132E907A006B9E28 /* WebIconDatabase.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebIconDatabase.messages.in; sourceTree = "<group>"; };
 		51871B59127CB89D00F76232 /* WebContextMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebContextMenu.cpp; sourceTree = "<group>"; };
 		51871B5A127CB89D00F76232 /* WebContextMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebContextMenu.h; sourceTree = "<group>"; };
 		518ACAE912AEE6BB00B04B83 /* WKProtectionSpaceTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKProtectionSpaceTypes.h; sourceTree = "<group>"; };
@@ -3316,16 +3299,12 @@
 		51C0C9791DDD78540032CAD3 /* _WKLinkIconParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKLinkIconParameters.h; sourceTree = "<group>"; };
 		51C0C97A1DDD78540032CAD3 /* _WKLinkIconParameters.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = _WKLinkIconParameters.mm; sourceTree = "<group>"; };
 		51C0C97B1DDD78540032CAD3 /* _WKLinkIconParametersInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKLinkIconParametersInternal.h; sourceTree = "<group>"; };
+		51C8E19B1F21617200BF731B /* WebIconDatabase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebIconDatabase.h; sourceTree = "<group>"; };
 		51CD1C591B3493A900142CA5 /* WKSecurityOriginRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKSecurityOriginRef.cpp; sourceTree = "<group>"; };
 		51CD1C5A1B3493A900142CA5 /* WKSecurityOriginRef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKSecurityOriginRef.h; sourceTree = "<group>"; };
 		51CD1C5F1B34B9C900142CA5 /* WKSecurityOrigin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKSecurityOrigin.h; sourceTree = "<group>"; };
 		51CD1C601B34B9C900142CA5 /* WKSecurityOrigin.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKSecurityOrigin.mm; sourceTree = "<group>"; };
 		51CD1C611B34B9C900142CA5 /* WKSecurityOriginInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKSecurityOriginInternal.h; sourceTree = "<group>"; };
-		51D02F63132EC5B900BEAA96 /* WebIconDatabaseMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebIconDatabaseMessageReceiver.cpp; sourceTree = "<group>"; };
-		51D02F65132EC6D300BEAA96 /* WebIconDatabaseProxy.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = WebIconDatabaseProxy.messages.in; path = IconDatabase/WebIconDatabaseProxy.messages.in; sourceTree = "<group>"; };
-		51D02F67132EC73700BEAA96 /* WebIconDatabaseMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconDatabaseMessages.h; sourceTree = "<group>"; };
-		51D02F68132EC73700BEAA96 /* WebIconDatabaseProxyMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebIconDatabaseProxyMessageReceiver.cpp; sourceTree = "<group>"; };
-		51D02F69132EC73700BEAA96 /* WebIconDatabaseProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconDatabaseProxyMessages.h; sourceTree = "<group>"; };
 		51D124211E6D349A002B2820 /* WebURLSchemeTaskProxy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebURLSchemeTaskProxy.cpp; sourceTree = "<group>"; };
 		51D124221E6D349A002B2820 /* WebURLSchemeTaskProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebURLSchemeTaskProxy.h; sourceTree = "<group>"; };
 		51D124241E6D3CC3002B2820 /* WebURLSchemeHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebURLSchemeHandler.cpp; sourceTree = "<group>"; };
@@ -6259,16 +6238,6 @@
 			path = DatabaseService;
 			sourceTree = "<group>";
 		};
-		51FBB9C1132E079200F327B4 /* IconDatabase */ = {
-			isa = PBXGroup;
-			children = (
-				511B24A4132E095700065A0C /* WebIconDatabaseProxy.cpp */,
-				511B24A5132E095700065A0C /* WebIconDatabaseProxy.h */,
-				51D02F65132EC6D300BEAA96 /* WebIconDatabaseProxy.messages.in */,
-			);
-			name = IconDatabase;
-			sourceTree = "<group>";
-		};
 		539BD5B21DADB0BA00F2E4E1 /* capture */ = {
 			isa = PBXGroup;
 			children = (
@@ -6569,7 +6538,6 @@
 				CD73BA3D131A2A2100EEDED2 /* FullScreen */,
 				515BE1721D53FDB900DD7C68 /* Gamepad */,
 				BC0E5FCB12D696DD0012A72A /* Geolocation */,
-				51FBB9C1132E079200F327B4 /* IconDatabase */,
 				BC204EDF11C83E72008F3375 /* InjectedBundle */,
 				33D3A3BD1339609800709BE4 /* MediaCache */,
 				4A410F4119AF7B27002EBAB5 /* MediaStream */,
@@ -6823,11 +6791,7 @@
 				BC0E615212D6CAC80012A72A /* WebGeolocationManagerProxy.messages.in */,
 				BC1BE1F112D54DBD0004A228 /* WebGeolocationProvider.cpp */,
 				BC1BE1F012D54DBD0004A228 /* WebGeolocationProvider.h */,
-				511B24A8132E097200065A0C /* WebIconDatabase.cpp */,
-				511B24A9132E097200065A0C /* WebIconDatabase.h */,
-				5184BC4A132E907A006B9E28 /* WebIconDatabase.messages.in */,
-				51834590134532E80092B696 /* WebIconDatabaseClient.cpp */,
-				51834591134532E80092B696 /* WebIconDatabaseClient.h */,
+				51C8E19B1F21617200BF731B /* WebIconDatabase.h */,
 				1C8E28331275D73800BC7BD0 /* WebInspectorProxy.cpp */,
 				1C8E28321275D73800BC7BD0 /* WebInspectorProxy.h */,
 				1C77C1951288A872006A742F /* WebInspectorProxy.messages.in */,
@@ -7880,10 +7844,6 @@
 				BC0E606012D6BA910012A72A /* WebGeolocationManagerMessages.h */,
 				BC0E618012D6CB1D0012A72A /* WebGeolocationManagerProxyMessageReceiver.cpp */,
 				BC0E618112D6CB1D0012A72A /* WebGeolocationManagerProxyMessages.h */,
-				51D02F63132EC5B900BEAA96 /* WebIconDatabaseMessageReceiver.cpp */,
-				51D02F67132EC73700BEAA96 /* WebIconDatabaseMessages.h */,
-				51D02F68132EC73700BEAA96 /* WebIconDatabaseProxyMessageReceiver.cpp */,
-				51D02F69132EC73700BEAA96 /* WebIconDatabaseProxyMessages.h */,
 				510523771C73DA70007993CB /* WebIDBConnectionToClientMessageReceiver.cpp */,
 				510523781C73DA70007993CB /* WebIDBConnectionToClientMessages.h */,
 				510523721C73D37B007993CB /* WebIDBConnectionToServerMessageReceiver.cpp */,
@@ -8714,11 +8674,6 @@
 				BC1BE1F212D54DBD0004A228 /* WebGeolocationProvider.h in Headers */,
 				2D5036761BCED19F00E20BB3 /* WebGestureEvent.h in Headers */,
 				93A88B331BC6E9CD00ABA5C2 /* WebHitTestResultData.h in Headers */,
-				511B24AB132E097200065A0C /* WebIconDatabase.h in Headers */,
-				51834593134532E90092B696 /* WebIconDatabaseClient.h in Headers */,
-				51D02F6A132EC73700BEAA96 /* WebIconDatabaseMessages.h in Headers */,
-				511B24A7132E095700065A0C /* WebIconDatabaseProxy.h in Headers */,
-				51D02F6C132EC73700BEAA96 /* WebIconDatabaseProxyMessages.h in Headers */,
 				F44DFEB21E9E752F0038D196 /* WebIconUtilities.h in Headers */,
 				510523701C739D42007993CB /* WebIDBConnectionToClient.h in Headers */,
 				5105237A1C73DA77007993CB /* WebIDBConnectionToClientMessages.h in Headers */,
@@ -9388,7 +9343,7 @@
 				LastSwiftUpdateCheck = 0700;
 				LastUpgradeCheck = 0700;
 			};
-			buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "WebKit2" */;
+			buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "WebKit" */;
 			compatibilityVersion = "Xcode 3.2";
 			developmentRegion = English;
 			hasScannedForEncodings = 1;
@@ -10310,11 +10265,6 @@
 				2D5036751BCED19F00E20BB3 /* WebGestureEvent.cpp in Sources */,
 				93A88B361BC6EAD500ABA5C2 /* WebHitTestResultData.cpp in Sources */,
 				93A88B301BC6E99700ABA5C2 /* WebHitTestResultData.mm in Sources */,
-				511B24AA132E097200065A0C /* WebIconDatabase.cpp in Sources */,
-				51834592134532E90092B696 /* WebIconDatabaseClient.cpp in Sources */,
-				51D02F64132EC5B900BEAA96 /* WebIconDatabaseMessageReceiver.cpp in Sources */,
-				511B24A6132E095700065A0C /* WebIconDatabaseProxy.cpp in Sources */,
-				51D02F6B132EC73700BEAA96 /* WebIconDatabaseProxyMessageReceiver.cpp in Sources */,
 				F44DFEB31E9E752F0038D196 /* WebIconUtilities.mm in Sources */,
 				5105236F1C739D42007993CB /* WebIDBConnectionToClient.cpp in Sources */,
 				510523791C73DA77007993CB /* WebIDBConnectionToClientMessageReceiver.cpp in Sources */,
@@ -11167,7 +11117,7 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Production;
 		};
-		1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "WebKit2" */ = {
+		1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "WebKit" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				1DEB91B208733DA50010E9CD /* Debug */,

Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (219712 => 219713)


--- trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -48,7 +48,6 @@
 #include "WebFrame.h"
 #include "WebFrameNetworkingContext.h"
 #include "WebFullScreenManager.h"
-#include "WebIconDatabaseMessages.h"
 #include "WebNavigationDataStore.h"
 #include "WebPage.h"
 #include "WebPageGroupProxy.h"

Modified: trunk/Source/WebKit/WebProcess/WebProcess.cpp (219712 => 219713)


--- trunk/Source/WebKit/WebProcess/WebProcess.cpp	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/WebProcess/WebProcess.cpp	2017-07-21 04:10:54 UTC (rev 219713)
@@ -51,7 +51,6 @@
 #include "WebFrameNetworkingContext.h"
 #include "WebGamepadProvider.h"
 #include "WebGeolocationManager.h"
-#include "WebIconDatabaseProxy.h"
 #include "WebLoaderStrategy.h"
 #include "WebMediaKeyStorageManager.h"
 #include "WebMemorySampler.h"
@@ -88,7 +87,6 @@
 #include <WebCore/GCController.h>
 #include <WebCore/GlyphPage.h>
 #include <WebCore/HTMLMediaElement.h>
-#include <WebCore/IconDatabase.h>
 #include <WebCore/JSDOMWindow.h>
 #include <WebCore/Language.h>
 #include <WebCore/MainFrame.h>
@@ -163,7 +161,6 @@
     , m_viewUpdateDispatcher(ViewUpdateDispatcher::create())
 #endif
     , m_webInspectorInterruptDispatcher(WebInspectorInterruptDispatcher::create())
-    , m_iconDatabaseProxy(*new WebIconDatabaseProxy(*this))
     , m_webLoaderStrategy(*new WebLoaderStrategy)
     , m_dnsPrefetchHystereris([this](HysteresisState state) { if (state == HysteresisState::Stopped) m_dnsPrefetchedHosts.clear(); })
 #if ENABLE(NETSCAPE_PLUGIN_API)
@@ -300,10 +297,6 @@
     auto& databaseManager = DatabaseManager::singleton();
     databaseManager.initialize(parameters.webSQLDatabaseDirectory);
 
-#if ENABLE(ICONDATABASE)
-    m_iconDatabaseProxy.setEnabled(parameters.iconDatabaseEnabled);
-#endif
-
     // FIXME: This should be constructed per data store, not per process.
     m_applicationCacheStorage = ApplicationCacheStorage::create(parameters.applicationCacheDirectory, parameters.applicationCacheFlatFileSubdirectoryName);
 #if PLATFORM(IOS)
@@ -1015,12 +1008,6 @@
     data.statisticsNumbers.set(ASCIILiteral("FastMallocCommittedVMBytes"), fastMallocStatistics.committedVMBytes);
     data.statisticsNumbers.set(ASCIILiteral("FastMallocFreeListBytes"), fastMallocStatistics.freeListBytes);
     
-    // Gather icon statistics.
-    data.statisticsNumbers.set(ASCIILiteral("IconPageURLMappingCount"), iconDatabase().pageURLMappingCount());
-    data.statisticsNumbers.set(ASCIILiteral("IconRetainedPageURLCount"), iconDatabase().retainedPageURLCount());
-    data.statisticsNumbers.set(ASCIILiteral("IconRecordCount"), iconDatabase().iconRecordCount());
-    data.statisticsNumbers.set(ASCIILiteral("IconsWithDataCount"), iconDatabase().iconRecordCountWithData());
-    
     // Gather font statistics.
     auto& fontCache = FontCache::singleton();
     data.statisticsNumbers.set(ASCIILiteral("CachedFontDataCount"), fontCache.fontCount());

Modified: trunk/Source/WebKit/WebProcess/WebProcess.h (219712 => 219713)


--- trunk/Source/WebKit/WebProcess/WebProcess.h	2017-07-21 02:36:52 UTC (rev 219712)
+++ trunk/Source/WebKit/WebProcess/WebProcess.h	2017-07-21 04:10:54 UTC (rev 219713)
@@ -82,7 +82,6 @@
 class WebAutomationSessionProxy;
 class WebConnectionToUIProcess;
 class WebFrame;
-class WebIconDatabaseProxy;
 class WebLoaderStrategy;
 class WebPage;
 class WebPageGroupProxy;
@@ -376,8 +375,6 @@
 
     TextCheckerState m_textCheckerState;
 
-    WebIconDatabaseProxy& m_iconDatabaseProxy;
-
     void ensureNetworkProcessConnection();
     RefPtr<NetworkProcessConnection> m_networkProcessConnection;
     WebLoaderStrategy& m_webLoaderStrategy;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to