[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

andersca at apple.com andersca at apple.com
Wed Dec 22 14:30:39 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 8c46a06903a243dbbd75f1cd26337fc9da1482c7
Author: andersca at apple.com <andersca at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Oct 12 01:31:15 2010 +0000

    Remove WebIconFetcher from WebKit and IconFetcher from WebCore
    https://bugs.webkit.org/show_bug.cgi?id=47523
    
    Reviewed by Darin Adler.
    
    WebCore:
    
    Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses.
    
    * GNUmakefile.am:
    * WebCore.exp.in:
    * WebCore.gyp/WebCore.gyp:
    * WebCore.gypi:
    * WebCore.vcproj/WebCore.vcproj:
    * WebCore.xcodeproj/project.pbxproj:
    * loader/icon/IconFetcher.cpp: Removed.
    * loader/icon/IconFetcher.h: Removed.
    
    WebKit:
    
    Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
    
    * WebKit.xcodeproj/project.pbxproj:
    
    WebKit/mac:
    
    Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
    
    * Misc/WebIconFetcher.h: Removed.
    * Misc/WebIconFetcher.mm: Removed.
    * Misc/WebIconFetcherInternal.h: Removed.
    * WebView/WebFrame.mm:
    * WebView/WebFramePrivate.h:
    
    WebKit/win:
    
    Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
    
    * Interfaces/IWebFramePrivate.idl:
    * Interfaces/IWebIconFetcher.idl: Removed.
    * Interfaces/WebKit.idl:
    * WebFrame.cpp:
    (WebFrame::unused1):
    * WebFrame.h:
    * WebIconFetcher.cpp: Removed.
    * WebIconFetcher.h: Removed.
    * WebKit.vcproj/Interfaces.vcproj:
    * WebKit.vcproj/WebKit.vcproj:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69549 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index ed55e86..60c579a 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,21 @@
+2010-10-11  Anders Carlsson  <andersca at apple.com>
+
+        Reviewed by Darin Adler.
+
+        Remove WebIconFetcher from WebKit and IconFetcher from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=47523
+
+        Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses.
+
+        * GNUmakefile.am:
+        * WebCore.exp.in:
+        * WebCore.gyp/WebCore.gyp:
+        * WebCore.gypi:
+        * WebCore.vcproj/WebCore.vcproj:
+        * WebCore.xcodeproj/project.pbxproj:
+        * loader/icon/IconFetcher.cpp: Removed.
+        * loader/icon/IconFetcher.h: Removed.
+
 2010-10-11  Jia Pu  <jpu at apple.com>
 
         Reviewed by Adele Peterson.
diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
index c1f2190..c629a7c 100644
--- a/WebCore/GNUmakefile.am
+++ b/WebCore/GNUmakefile.am
@@ -1921,7 +1921,6 @@ webcore_sources += \
 	WebCore/loader/icon/IconDatabase.cpp \
 	WebCore/loader/icon/IconDatabase.h \
 	WebCore/loader/icon/IconDatabaseNone.cpp \
-	WebCore/loader/icon/IconFetcher.h \
 	WebCore/loader/icon/IconLoader.cpp \
 	WebCore/loader/icon/IconLoader.h \
 	WebCore/loader/icon/IconRecord.cpp \
diff --git a/WebCore/WebCore.exp.in b/WebCore/WebCore.exp.in
index 5cb2b51..e0a6af1 100644
--- a/WebCore/WebCore.exp.in
+++ b/WebCore/WebCore.exp.in
@@ -200,8 +200,6 @@ __ZN7WebCore11HistoryItemC1ERKN3WTF6StringES4_d
 __ZN7WebCore11HistoryItemC1ERKNS_4KURLERKN3WTF6StringES7_S7_
 __ZN7WebCore11HistoryItemC1Ev
 __ZN7WebCore11HistoryItemD1Ev
-__ZN7WebCore11IconFetcher6cancelEv
-__ZN7WebCore11IconFetcher6createEPNS_5FrameEPNS_17IconFetcherClientE
 __ZN7WebCore11RenderLayer19scrollRectToVisibleERKNS_7IntRectEbRKNS_15ScrollAlignmentES6_
 __ZN7WebCore11globalPointERK8_NSPointP8NSWindow
 __ZN7WebCore11toUserSpaceERK7_NSRectP8NSWindow
diff --git a/WebCore/WebCore.gyp/WebCore.gyp b/WebCore/WebCore.gyp/WebCore.gyp
index 6b13eb5..2f45799 100644
--- a/WebCore/WebCore.gyp/WebCore.gyp
+++ b/WebCore/WebCore.gyp/WebCore.gyp
@@ -1278,7 +1278,6 @@
         # be nice to provide more explicit comments.  Some of these do actually
         # compile.
         ['exclude', 'dom/StaticStringList\\.cpp$'],
-        ['exclude', 'loader/icon/IconFetcher\\.cpp$'],
         ['exclude', 'loader/UserStyleSheetLoader\\.cpp$'],
 
         # We use a multi-process version from the WebKit API.
diff --git a/WebCore/WebCore.gypi b/WebCore/WebCore.gypi
index 3367cee..e5153fa 100644
--- a/WebCore/WebCore.gypi
+++ b/WebCore/WebCore.gypi
@@ -1982,8 +1982,6 @@
             'loader/icon/IconDatabase.h',
             'loader/icon/IconDatabaseClient.h',
             'loader/icon/IconDatabaseNone.cpp',
-            'loader/icon/IconFetcher.cpp',
-            'loader/icon/IconFetcher.h',
             'loader/icon/IconLoader.cpp',
             'loader/icon/IconLoader.h',
             'loader/icon/IconRecord.cpp',
diff --git a/WebCore/WebCore.vcproj/WebCore.vcproj b/WebCore/WebCore.vcproj/WebCore.vcproj
index d61b49f..17ae90a 100644
--- a/WebCore/WebCore.vcproj/WebCore.vcproj
+++ b/WebCore/WebCore.vcproj/WebCore.vcproj
@@ -24006,14 +24006,6 @@
 					>
 				</File>
 				<File
-					RelativePath="..\loader\icon\IconFetcher.cpp"
-					>
-				</File>
-				<File
-					RelativePath="..\loader\icon\IconFetcher.h"
-					>
-				</File>
-				<File
 					RelativePath="..\loader\icon\IconLoader.cpp"
 					>
 				</File>
diff --git a/WebCore/WebCore.xcodeproj/project.pbxproj b/WebCore/WebCore.xcodeproj/project.pbxproj
index df51401..94d3aca 100644
--- a/WebCore/WebCore.xcodeproj/project.pbxproj
+++ b/WebCore/WebCore.xcodeproj/project.pbxproj
@@ -379,8 +379,6 @@
 		1A2AAC580DC2A3B100A20D9A /* ApplicationCacheStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A2AAC560DC2A3B100A20D9A /* ApplicationCacheStorage.cpp */; };
 		1A2AAC590DC2A3B100A20D9A /* ApplicationCacheStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A2AAC570DC2A3B100A20D9A /* ApplicationCacheStorage.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		1A2C40AB0DEB55AA005AF19E /* JSTextCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A2C40AA0DEB55AA005AF19E /* JSTextCustom.cpp */; };
-		1A2D753D0DE47FAB00F0A648 /* IconFetcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A2D753B0DE47FAB00F0A648 /* IconFetcher.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		1A2D753E0DE47FAB00F0A648 /* IconFetcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A2D753C0DE47FAB00F0A648 /* IconFetcher.cpp */; };
 		1A2E6E590CC55213004A2062 /* SQLValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A2E6E570CC55213004A2062 /* SQLValue.cpp */; };
 		1A2E6E5A0CC55213004A2062 /* SQLValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A2E6E580CC55213004A2062 /* SQLValue.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		1A2E6E7A0CC556D5004A2062 /* SQLiteAuthorizer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A2E6E780CC556D5004A2062 /* SQLiteAuthorizer.cpp */; };
@@ -6367,8 +6365,6 @@
 		1A2AAC560DC2A3B100A20D9A /* ApplicationCacheStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ApplicationCacheStorage.cpp; sourceTree = "<group>"; };
 		1A2AAC570DC2A3B100A20D9A /* ApplicationCacheStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationCacheStorage.h; sourceTree = "<group>"; };
 		1A2C40AA0DEB55AA005AF19E /* JSTextCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSTextCustom.cpp; sourceTree = "<group>"; };
-		1A2D753B0DE47FAB00F0A648 /* IconFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IconFetcher.h; sourceTree = "<group>"; };
-		1A2D753C0DE47FAB00F0A648 /* IconFetcher.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IconFetcher.cpp; sourceTree = "<group>"; };
 		1A2E6E570CC55213004A2062 /* SQLValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SQLValue.cpp; path = sql/SQLValue.cpp; sourceTree = "<group>"; };
 		1A2E6E580CC55213004A2062 /* SQLValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SQLValue.h; path = sql/SQLValue.h; sourceTree = "<group>"; };
 		1A2E6E780CC556D5004A2062 /* SQLiteAuthorizer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SQLiteAuthorizer.cpp; path = sql/SQLiteAuthorizer.cpp; sourceTree = "<group>"; };
@@ -12668,8 +12664,6 @@
 				5126E6BA0A2E3B12005C29FA /* IconDatabase.h */,
 				51E1ECB80C91C90400DC255B /* IconDatabaseClient.h */,
 				445C8DB610015FC90031531A /* IconDatabaseNone.cpp */,
-				1A2D753C0DE47FAB00F0A648 /* IconFetcher.cpp */,
-				1A2D753B0DE47FAB00F0A648 /* IconFetcher.h */,
 				513F14510AB634C400094DDF /* IconLoader.cpp */,
 				513F14520AB634C400094DDF /* IconLoader.h */,
 				51E1ECBA0C91C90400DC255B /* IconRecord.cpp */,
@@ -19592,7 +19586,6 @@
 				B275356E0B053814002CE64F /* Icon.h in Headers */,
 				5126E6BC0A2E3B12005C29FA /* IconDatabase.h in Headers */,
 				51E1ECBE0C91C90400DC255B /* IconDatabaseClient.h in Headers */,
-				1A2D753D0DE47FAB00F0A648 /* IconFetcher.h in Headers */,
 				513F14540AB634C400094DDF /* IconLoader.h in Headers */,
 				51E1ECC10C91C90400DC255B /* IconRecord.h in Headers */,
 				C585A6CD11D4FB3D004C3E4B /* IDBAny.h in Headers */,
@@ -22178,7 +22171,6 @@
 				375CD23B119D44EA00A2A859 /* HyphenationMac.mm in Sources */,
 				5126E6BB0A2E3B12005C29FA /* IconDatabase.cpp in Sources */,
 				445C8DB710015FC90031531A /* IconDatabaseNone.cpp in Sources */,
-				1A2D753E0DE47FAB00F0A648 /* IconFetcher.cpp in Sources */,
 				513F14530AB634C400094DDF /* IconLoader.cpp in Sources */,
 				B275358E0B053A66002CE64F /* IconMac.mm in Sources */,
 				51E1ECC00C91C90400DC255B /* IconRecord.cpp in Sources */,
diff --git a/WebCore/loader/icon/IconFetcher.cpp b/WebCore/loader/icon/IconFetcher.cpp
deleted file mode 100644
index f6b80fa..0000000
--- a/WebCore/loader/icon/IconFetcher.cpp
+++ /dev/null
@@ -1,230 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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 "IconFetcher.h"
-
-#include "Frame.h"
-#include "FrameLoaderClient.h"
-#include "HTMLHeadElement.h"
-#include "HTMLLinkElement.h"
-#include "HTMLNames.h"
-#include "ResourceHandle.h"
-#include "ResourceRequest.h"
-#include "SharedBuffer.h"
-
-namespace WebCore {
-
-using namespace HTMLNames;
-
-struct IconLinkEntry {
-public:
-    enum IconType {
-        Unknown,
-        ICNS,
-        ICO,
-    };
-    
-    IconLinkEntry(IconType type, const KURL& url) 
-        : m_type(type)
-        , m_url(url)
-    {
-    }
-    
-    IconType type() const { return m_type; }
-    const KURL& url() const { return m_url; }
-
-    SharedBuffer* buffer() 
-    {
-        if (!m_buffer)
-            m_buffer = SharedBuffer::create();
-        
-        return m_buffer.get();
-    }
-    
-private:
-    RefPtr<SharedBuffer> m_buffer;
-    IconType m_type;
-    KURL m_url;
-};
-    
-#if PLATFORM(MAC)
-static const IconLinkEntry::IconType NativeIconType = IconLinkEntry::ICNS;
-#elif PLATFORM(WIN)
-static const IconLinkEntry::IconType NativeIconType = IconLinkEntry::ICO;
-#else
-static const IconLinkEntry::IconType NativeIconType = IconLinkEntry::Unknown;
-#endif
-
-static void parseIconLink(HTMLLinkElement* link, Vector<IconLinkEntry>& entries)
-{
-    // FIXME: Parse the size attribute too.
-    
-    IconLinkEntry::IconType type = IconLinkEntry::Unknown;
-    const KURL& url = link->href();
-
-    // Try to determine the file type.
-    String path = url.path();
-    
-    size_t pos = path.reverseFind('.');
-    if (pos != notFound) {
-        String extension = path.substring(pos + 1);
-        if (equalIgnoringCase(extension, "icns"))
-            type = IconLinkEntry::ICNS;
-        else if (equalIgnoringCase(extension, "ico"))
-            type = IconLinkEntry::ICO;
-    }
-    
-    entries.append(IconLinkEntry(type, url));
-}
-    
-PassRefPtr<IconFetcher> IconFetcher::create(Frame* frame, IconFetcherClient* client)
-{
-    Document* document = frame->document();
-    
-    HTMLHeadElement* head = document->head();
-    if (!head)
-        return 0;
-    
-    Vector<IconLinkEntry> entries;
-    
-    for (Node* n = head; n; n = n->traverseNextNode()) {
-        if (!n->hasTagName(linkTag))    
-            continue;
-            
-        HTMLLinkElement* link = static_cast<HTMLLinkElement*>(n);
-        if (!link->isIcon())
-            continue;
-
-        parseIconLink(link, entries);
-    }
-    
-    if (entries.isEmpty())
-        return 0;
-    
-    // Check if any of the entries have the same type as the native icon type.
-
-    // FIXME: This should be way more sophisticated, and handle conversion
-    // of multisize formats for example.
-    for (unsigned i = 0; i < entries.size(); i++) {
-        const IconLinkEntry& entry = entries[i];
-        if (entry.type() == NativeIconType) {
-            RefPtr<IconFetcher> iconFetcher = adoptRef(new IconFetcher(frame, client));
-            
-            iconFetcher->m_entries.append(entry);
-            iconFetcher->loadEntry();
-            
-            return iconFetcher.release();
-        }
-    }
-
-    return 0;
-}    
-
-IconFetcher::IconFetcher(Frame* frame, IconFetcherClient* client)
-    : m_frame(frame)
-    , m_client(client)
-    , m_currentEntry(0)
-{
-}
-    
-IconFetcher::~IconFetcher()
-{
-    cancel();
-}
-
-void IconFetcher::cancel()
-{
-    if (m_handle)
-        m_handle->cancel();
-}
-
-PassRefPtr<SharedBuffer> IconFetcher::createIcon()
-{
-    ASSERT(!m_entries.isEmpty());
-    
-    // For now, just return the data of the first entry.
-    return m_entries.first().buffer();
-}
-
-void IconFetcher::loadEntry()
-{
-    ASSERT(m_currentEntry < m_entries.size());
-    ASSERT(!m_handle);
-    
-    m_handle = ResourceHandle::create(m_frame->loader()->networkingContext(), m_entries[m_currentEntry].url(), this, false, false);
-}
-    
-void IconFetcher::loadFailed()
-{
-    m_handle = 0;
-    
-    m_client->finishedFetchingIcon(0);
-}    
-    
-void IconFetcher::didReceiveResponse(ResourceHandle* handle, const ResourceResponse& response)
-{
-    ASSERT_UNUSED(handle, m_handle == handle);
-    
-    int statusCode = response.httpStatusCode() / 100;
-    if (statusCode == 4 || statusCode == 5) {
-        loadFailed();
-        return;
-    }    
-}
-    
-void IconFetcher::didReceiveData(ResourceHandle* handle, const char* data, int length, int)
-{
-    ASSERT_UNUSED(handle, m_handle == handle);
-    
-    m_entries[m_currentEntry].buffer()->append(data, length);
-}
-
-void IconFetcher::didFinishLoading(ResourceHandle* handle, double)
-{
-    ASSERT_UNUSED(handle, m_handle == handle);
-    
-    if (m_currentEntry == m_entries.size() - 1) {
-        // We finished loading, create the icon
-        RefPtr<SharedBuffer> iconData = createIcon();
-        
-        m_client->finishedFetchingIcon(iconData.release());
-        return;
-    }
-    
-    // Load the next entry
-    m_currentEntry++;
-
-    loadEntry();
-}
-    
-void IconFetcher::didFail(ResourceHandle* handle, const ResourceError&)
-{
-    ASSERT_UNUSED(handle, m_handle == handle);
-    
-    loadFailed();
-}
-
-} // namespace WebCore
diff --git a/WebCore/loader/icon/IconFetcher.h b/WebCore/loader/icon/IconFetcher.h
deleted file mode 100644
index 387e1c3..0000000
--- a/WebCore/loader/icon/IconFetcher.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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 IconFetcher_h
-#define IconFetcher_h
-
-#include <wtf/RefCounted.h>
-#include <wtf/Forward.h>
-#include <wtf/Vector.h>
-
-#include "ResourceHandleClient.h"
-
-namespace WebCore {
-
-class Frame;
-struct IconLinkEntry;
-class ResourceHandle;
-class SharedBuffer;
-
-class IconFetcherClient {
-public:
-    virtual void finishedFetchingIcon(PassRefPtr<SharedBuffer> iconData) = 0;
-    
-    virtual ~IconFetcherClient() { }
-};
-
-class IconFetcher : public RefCounted<IconFetcher>, ResourceHandleClient {
-public:
-    static PassRefPtr<IconFetcher> create(Frame*, IconFetcherClient*);
-    ~IconFetcher();
-    
-    void cancel();
-    
-private:
-    IconFetcher(Frame*, IconFetcherClient*);
-    void loadEntry();
-    void loadFailed();
-    
-    PassRefPtr<SharedBuffer> createIcon();
-    
-    virtual void didReceiveResponse(ResourceHandle*, const ResourceResponse&);
-    virtual void didReceiveData(ResourceHandle*, const char*, int, int lengthReceived);
-    virtual void didFinishLoading(ResourceHandle*, double /*finishTime*/);
-    virtual void didFail(ResourceHandle*, const ResourceError&);
-
-    Frame* m_frame;
-    IconFetcherClient* m_client;
-
-    unsigned m_currentEntry;
-    RefPtr<ResourceHandle> m_handle;
-    Vector<IconLinkEntry> m_entries;
-};
-    
-} // namespace WebCore
-
-#endif // IconFetcher_h
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 01e8574..16b77e8 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,14 @@
+2010-10-11  Anders Carlsson  <andersca at apple.com>
+
+        Reviewed by Darin Adler.
+
+        Remove WebIconFetcher from WebKit and IconFetcher from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=47523
+
+        Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
+
+        * WebKit.xcodeproj/project.pbxproj:
+
 2010-10-07  Jessie Berlin  <jberlin at apple.com>
 
         Reviewed by Sam Weinig.
diff --git a/WebKit/WebKit.xcodeproj/project.pbxproj b/WebKit/WebKit.xcodeproj/project.pbxproj
index 420695f..364c9e5 100644
--- a/WebKit/WebKit.xcodeproj/project.pbxproj
+++ b/WebKit/WebKit.xcodeproj/project.pbxproj
@@ -29,9 +29,6 @@
 		14D8252F0AF955090004F057 /* WebChromeClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 14D8252D0AF955090004F057 /* WebChromeClient.h */; };
 		14D825300AF955090004F057 /* WebChromeClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = 14D8252E0AF955090004F057 /* WebChromeClient.mm */; };
 		1A20D08B0ED384F20043FA9F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1A20D08A0ED384F20043FA9F /* QuartzCore.framework */; };
-		1A2D754D0DE480B900F0A648 /* WebIconFetcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A2D754B0DE480B900F0A648 /* WebIconFetcher.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		1A2D754E0DE480B900F0A648 /* WebIconFetcher.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A2D754C0DE480B900F0A648 /* WebIconFetcher.mm */; };
-		1A2D75500DE4810E00F0A648 /* WebIconFetcherInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A2D754F0DE4810E00F0A648 /* WebIconFetcherInternal.h */; };
 		1A2DBE9F0F251E3A0036F8A6 /* ProxyInstance.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A2DBE9D0F251E3A0036F8A6 /* ProxyInstance.h */; };
 		1A2DBEA00F251E3A0036F8A6 /* ProxyInstance.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1A2DBE9E0F251E3A0036F8A6 /* ProxyInstance.mm */; };
 		1A4DF5220EC8C74D006BD4B4 /* WebNetscapePluginView.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A4DF5200EC8C74D006BD4B4 /* WebNetscapePluginView.h */; };
@@ -406,9 +403,6 @@
 		14D8252D0AF955090004F057 /* WebChromeClient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WebChromeClient.h; sourceTree = "<group>"; };
 		14D8252E0AF955090004F057 /* WebChromeClient.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = WebChromeClient.mm; sourceTree = "<group>"; };
 		1A20D08A0ED384F20043FA9F /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = /System/Library/Frameworks/QuartzCore.framework; sourceTree = "<absolute>"; };
-		1A2D754B0DE480B900F0A648 /* WebIconFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconFetcher.h; sourceTree = "<group>"; };
-		1A2D754C0DE480B900F0A648 /* WebIconFetcher.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebIconFetcher.mm; sourceTree = "<group>"; };
-		1A2D754F0DE4810E00F0A648 /* WebIconFetcherInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebIconFetcherInternal.h; sourceTree = "<group>"; };
 		1A2DBE9D0F251E3A0036F8A6 /* ProxyInstance.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProxyInstance.h; sourceTree = "<group>"; };
 		1A2DBE9E0F251E3A0036F8A6 /* ProxyInstance.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ProxyInstance.mm; sourceTree = "<group>"; };
 		1A4DF5200EC8C74D006BD4B4 /* WebNetscapePluginView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebNetscapePluginView.h; sourceTree = "<group>"; };
@@ -952,9 +946,6 @@
 				51B2A0FF0ADB15D0002A9BEE /* WebIconDatabaseDelegate.h */,
 				9304B2FF0B02341500F7850D /* WebIconDatabaseInternal.h */,
 				F528E3EB031E91AD01CA2ACA /* WebIconDatabasePrivate.h */,
-				1A2D754B0DE480B900F0A648 /* WebIconFetcher.h */,
-				1A2D754C0DE480B900F0A648 /* WebIconFetcher.mm */,
-				1A2D754F0DE4810E00F0A648 /* WebIconFetcherInternal.h */,
 				2568C72C0174912D0ECA149E /* WebKit.h */,
 				F5927D4E02D26C5E01CA2DBB /* WebKitErrors.h */,
 				83730F9803FB1E660004736E /* WebKitErrors.m */,
@@ -1511,8 +1502,6 @@
 				51B2A1000ADB15D0002A9BEE /* WebIconDatabaseDelegate.h in Headers */,
 				9304B3000B02341500F7850D /* WebIconDatabaseInternal.h in Headers */,
 				939810190824BF01008DF038 /* WebIconDatabasePrivate.h in Headers */,
-				1A2D754D0DE480B900F0A648 /* WebIconFetcher.h in Headers */,
-				1A2D75500DE4810E00F0A648 /* WebIconFetcherInternal.h in Headers */,
 				5D7BF8140C2A1D90008CE06D /* WebInspector.h in Headers */,
 				06693DDC0BFBA85200216072 /* WebInspectorClient.h in Headers */,
 				7A8FF0D11075024A00A80A08 /* WebInspectorPrivate.h in Headers */,
@@ -1912,7 +1901,6 @@
 				939810F40824BF01008DF038 /* WebHTMLView.mm in Sources */,
 				939810C10824BF01008DF038 /* WebIconDatabase.mm in Sources */,
 				51494CD70C7EBDE0004178C5 /* WebIconDatabaseClient.mm in Sources */,
-				1A2D754E0DE480B900F0A648 /* WebIconFetcher.mm in Sources */,
 				939810E30824BF01008DF038 /* WebImageRendererFactory.m in Sources */,
 				5D7BF8150C2A1D90008CE06D /* WebInspector.mm in Sources */,
 				06693DDD0BFBA85200216072 /* WebInspectorClient.mm in Sources */,
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index dc107e6..d18d315 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,18 @@
+2010-10-11  Anders Carlsson  <andersca at apple.com>
+
+        Reviewed by Darin Adler.
+
+        Remove WebIconFetcher from WebKit and IconFetcher from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=47523
+
+        Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
+
+        * Misc/WebIconFetcher.h: Removed.
+        * Misc/WebIconFetcher.mm: Removed.
+        * Misc/WebIconFetcherInternal.h: Removed.
+        * WebView/WebFrame.mm:
+        * WebView/WebFramePrivate.h:
+
 2010-10-11  Jessie Berlin  <jberlin at apple.com>
 
         Reviewed by Darin Adler.
diff --git a/WebKit/mac/Misc/WebIconFetcher.h b/WebKit/mac/Misc/WebIconFetcher.h
deleted file mode 100644
index d27ad94..0000000
--- a/WebKit/mac/Misc/WebIconFetcher.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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. 
- */
-
-#import <Cocoa/Cocoa.h>
-
- at class WebIconFetcherPrivate;
-
- at interface WebIconFetcher : NSObject {
-    WebIconFetcherPrivate *_private;
-}
-
-- (void)cancel;
-
- at end
diff --git a/WebKit/mac/Misc/WebIconFetcher.mm b/WebKit/mac/Misc/WebIconFetcher.mm
deleted file mode 100644
index a31ab7d..0000000
--- a/WebKit/mac/Misc/WebIconFetcher.mm
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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. 
- */
-
-#import "WebIconFetcher.h"
-
-#import "WebFrameInternal.h"
-#import "WebIconFetcherInternal.h"
-
-#import <WebCore/Frame.h>
-#import <WebCore/IconFetcher.h>
-#import <WebCore/SharedBuffer.h>
-#import <wtf/PassRefPtr.h>
-
-using namespace WebCore;
-
-class WebIconFetcherClient : public IconFetcherClient {
-public:
-    WebIconFetcherClient(id target, SEL selector)
-        : m_target(target)
-        , m_selector(selector)
-    {
-    }
-
-    virtual void finishedFetchingIcon(PassRefPtr<SharedBuffer> iconData)
-    {
-        RetainPtr<NSData> data;
-        if (iconData)
-            data = iconData->createNSData();
-        
-        [m_target performSelector:m_selector withObject:m_fetcher.get() withObject:data.get()];
-
-        delete this;
-    }
-
-    void setFetcher(WebIconFetcher *fetcher) { m_fetcher = fetcher; }
-    
-private:
-    RetainPtr<WebIconFetcher> m_fetcher;
-    id m_target;
-    SEL m_selector;
-};
-
- at implementation WebIconFetcher
-
-- (id)init
-{
-    return nil;
-}
-
-- (void)dealloc
-{
-    if (_private)
-        reinterpret_cast<IconFetcher*>(_private)->deref();
-    
-    [super dealloc];
-}
-
-- (void)finalize
-{
-    if (_private)
-        reinterpret_cast<IconFetcher*>(_private)->deref();
-    
-    [super finalize];
-}
-
-- (void)cancel
-{
-    reinterpret_cast<IconFetcher*>(_private)->cancel();
-}
-
- at end
-
- at implementation WebIconFetcher (WebInternal)
-
-- (id)_initWithIconFetcher:(PassRefPtr<IconFetcher>)iconFetcher client:(WebIconFetcherClient *)client
-{
-    ASSERT(iconFetcher);
-    
-    self = [super init];
-    if (!self)
-        return nil;
-
-    client->setFetcher(self);
-    _private = reinterpret_cast<WebIconFetcherPrivate*>(iconFetcher.releaseRef());
-
-    return self;
-}
-
-+ (WebIconFetcher *)_fetchApplicationIconForFrame:(WebFrame *)webFrame
-                                           target:(id)target
-                                         selector:(SEL)selector
-{
-    Frame* frame = core(webFrame);
-    
-    WebIconFetcherClient* client = new WebIconFetcherClient(target, selector);
-    
-    RefPtr<IconFetcher> fetcher = IconFetcher::create(frame, client);
-    
-    if (!fetcher)
-        return nil;
-    
-    return [[[WebIconFetcher alloc] _initWithIconFetcher:fetcher.release() client:client] autorelease];
-}
-
- at end
-
diff --git a/WebKit/mac/Misc/WebIconFetcherInternal.h b/WebKit/mac/Misc/WebIconFetcherInternal.h
deleted file mode 100644
index 5951ef9..0000000
--- a/WebKit/mac/Misc/WebIconFetcherInternal.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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. 
- */
-
-#import <WebKit/WebIconFetcher.h>
-#import <wtf/Forward.h>
-
-namespace WebCore {
-    class IconFetcher;
-}
-
- at class WebFrame;
-
- at interface WebIconFetcher (WebInternal)
-
-+ (WebIconFetcher *)_fetchApplicationIconForFrame:(WebFrame *)webFrame
-                                           target:(id)target
-                                         selector:(SEL)selector;
-
- at end
-
diff --git a/WebKit/mac/WebView/WebFrame.mm b/WebKit/mac/WebView/WebFrame.mm
index 02696f4..4099e46 100644
--- a/WebKit/mac/WebView/WebFrame.mm
+++ b/WebKit/mac/WebView/WebFrame.mm
@@ -44,7 +44,6 @@
 #import "WebFrameViewInternal.h"
 #import "WebHTMLView.h"
 #import "WebHTMLViewInternal.h"
-#import "WebIconFetcherInternal.h"
 #import "WebKitStatisticsPrivate.h"
 #import "WebKitVersionChecks.h"
 #import "WebNSObjectExtras.h"
@@ -1008,14 +1007,6 @@ static inline WebDataSource *dataSource(DocumentLoader* loader)
     return _private->coreFrame->domWindow()->pendingUnloadEventListeners();
 }
 
-- (WebIconFetcher *)fetchApplicationIcon:(id)target
-                                selector:(SEL)selector
-{
-    return [WebIconFetcher _fetchApplicationIconForFrame:self
-                                                  target:target
-                                                selector:selector];
-}
-
 - (void)_setIsDisconnected:(bool)isDisconnected
 {
     _private->coreFrame->setIsDisconnected(isDisconnected);
diff --git a/WebKit/mac/WebView/WebFramePrivate.h b/WebKit/mac/WebView/WebFramePrivate.h
index 9cb6232..b0cb0f3 100644
--- a/WebKit/mac/WebView/WebFramePrivate.h
+++ b/WebKit/mac/WebView/WebFramePrivate.h
@@ -38,7 +38,6 @@
 @class DOMDocumentFragment;
 @class DOMNode;
 @class DOMRange;
- at class WebIconFetcher;
 @class WebScriptObject;
 @class WebScriptWorld;
 
@@ -87,9 +86,6 @@ typedef enum {
 
 - (unsigned)_pendingFrameUnloadEventCount;
 
-- (WebIconFetcher *)fetchApplicationIcon:(id)target
-                                selector:(SEL)selector;
-
 - (void)_setIsDisconnected:(bool)isDisconnected;
 - (void)_setExcludeFromTextSearch:(bool)exclude;
 
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog
index 3017340..ffb2b4e 100644
--- a/WebKit/win/ChangeLog
+++ b/WebKit/win/ChangeLog
@@ -1,3 +1,23 @@
+2010-10-11  Anders Carlsson  <andersca at apple.com>
+
+        Reviewed by Darin Adler.
+
+        Remove WebIconFetcher from WebKit and IconFetcher from WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=47523
+
+        Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
+
+        * Interfaces/IWebFramePrivate.idl:
+        * Interfaces/IWebIconFetcher.idl: Removed.
+        * Interfaces/WebKit.idl:
+        * WebFrame.cpp:
+        (WebFrame::unused1):
+        * WebFrame.h:
+        * WebIconFetcher.cpp: Removed.
+        * WebIconFetcher.h: Removed.
+        * WebKit.vcproj/Interfaces.vcproj:
+        * WebKit.vcproj/WebKit.vcproj:
+
 2010-10-11  Jessie Berlin  <jberlin at apple.com>
 
         Reviewed by Darin Adler.
diff --git a/WebKit/win/Interfaces/IWebFramePrivate.idl b/WebKit/win/Interfaces/IWebFramePrivate.idl
index 499aa03..5085dc7 100644
--- a/WebKit/win/Interfaces/IWebFramePrivate.idl
+++ b/WebKit/win/Interfaces/IWebFramePrivate.idl
@@ -30,8 +30,6 @@ import "IWebFrame.idl";
 #endif
 
 interface IWebFrame;
-interface IWebIconFetcher;
-interface IWebIconFetcherDelegate;
 interface IWebScriptWorld;
 
 typedef enum {
@@ -81,7 +79,7 @@ interface IWebFramePrivate : IUnknown
 
     HRESULT pendingFrameUnloadEventCount([out, retval] UINT* result);
 
-    HRESULT fetchApplicationIcon([in] IWebIconFetcherDelegate* delegate, [out, retval] IWebIconFetcher** result);
+    HRESULT unused1();
 
     HRESULT paintDocumentRectToContext([in] RECT rect, [in] OLE_HANDLE deviceContext);
 
diff --git a/WebKit/win/Interfaces/IWebIconFetcher.idl b/WebKit/win/Interfaces/IWebIconFetcher.idl
deleted file mode 100644
index 1486687..0000000
--- a/WebKit/win/Interfaces/IWebIconFetcher.idl
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 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.
- * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE 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 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 DO_NO_IMPORTS
-import "oaidl.idl";
-import "ocidl.idl";
-#endif
-
-interface IWebIconFetcher;
-
-[
-    object,
-    oleautomation,
-    uuid(9d27e503-1e0e-458e-bc66-ffa9fa64600e),
-    pointer_default(unique)
-]
-interface IWebIconFetcherDelegate : IUnknown
-{
-    HRESULT finishedLoadingIcon([in] IWebIconFetcher* fetcher, [in] IStream* data);
-}
-
-[
-    object,
-    oleautomation,
-    uuid(54f50460-8ffa-442c-b5Ab-5422e1fcc973),
-    pointer_default(unique)
-]
-interface IWebIconFetcher : IUnknown
-{
-    HRESULT cancel();
-}
diff --git a/WebKit/win/Interfaces/WebKit.idl b/WebKit/win/Interfaces/WebKit.idl
index efe2271..b4ce410 100644
--- a/WebKit/win/Interfaces/WebKit.idl
+++ b/WebKit/win/Interfaces/WebKit.idl
@@ -100,7 +100,6 @@ import "ocidl.idl";
 #include "IWebHistoryItemPrivate.idl"
 #include "IWebHistoryPrivate.idl"
 #include "IWebIconDatabase.idl"
-#include "IWebIconFetcher.idl"
 #include "IWebInspector.idl"
 #include "IWebInspectorPrivate.idl"
 #include "IWebJavaScriptCollector.idl"
diff --git a/WebKit/win/WebFrame.cpp b/WebKit/win/WebFrame.cpp
index 27da1f4..13e6865 100644
--- a/WebKit/win/WebFrame.cpp
+++ b/WebKit/win/WebFrame.cpp
@@ -46,7 +46,6 @@
 #include "WebFramePolicyListener.h"
 #include "WebHistory.h"
 #include "WebHistoryItem.h"
-#include "WebIconFetcher.h"
 #include "WebKit.h"
 #include "WebKitStatisticsPrivate.h"
 #include "WebMutableURLRequest.h"
@@ -1015,27 +1014,9 @@ HRESULT STDMETHODCALLTYPE WebFrame::pendingFrameUnloadEventCount(
     return S_OK;
 }
 
-HRESULT STDMETHODCALLTYPE WebFrame::fetchApplicationIcon( 
-    /* [in] */ IWebIconFetcherDelegate *delegate,
-    /* [retval][out] */ IWebIconFetcher **result)
+HRESULT STDMETHODCALLTYPE WebFrame::unused1()
 {
-    if (!result)
-        return E_POINTER;
-
-    *result = 0;
-
-    if (!delegate)
-        return E_FAIL;
-
-    Frame* coreFrame = core(this);
-    if (!coreFrame)
-        return E_FAIL;
-
-    *result = WebIconFetcher::fetchApplicationIcon(coreFrame, delegate);
-    if (!*result)
-        return E_FAIL;
-
-    return S_OK;
+    return E_NOTIMPL;
 }
 
 // IWebDocumentText -----------------------------------------------------------
diff --git a/WebKit/win/WebFrame.h b/WebKit/win/WebFrame.h
index 21c3027..5c0ac5e 100644
--- a/WebKit/win/WebFrame.h
+++ b/WebKit/win/WebFrame.h
@@ -187,9 +187,7 @@ public:
     virtual HRESULT STDMETHODCALLTYPE pendingFrameUnloadEventCount( 
         /* [retval][out] */ UINT* result);
 
-    virtual HRESULT STDMETHODCALLTYPE fetchApplicationIcon( 
-        /* [in] */ IWebIconFetcherDelegate *delegate,
-        /* [retval][out] */ IWebIconFetcher **result);
+    virtual HRESULT STDMETHODCALLTYPE unused1();
     
     virtual HRESULT STDMETHODCALLTYPE setInPrintingMode( 
         /* [in] */ BOOL value,
diff --git a/WebKit/win/WebIconFetcher.cpp b/WebKit/win/WebIconFetcher.cpp
deleted file mode 100644
index fbc46af..0000000
--- a/WebKit/win/WebIconFetcher.cpp
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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 "WebKitDLL.h"
-#include "WebIconFetcher.h"
-
-#include "MemoryStream.h"
-#include <WebCore/COMPtr.h>
-#include <WebCore/SharedBuffer.h>
-#include <wtf/PassRefPtr.h>
-
-using namespace WebCore;
-
-class WebIconFetcherClient : public IconFetcherClient {
-public:
-    WebIconFetcherClient(IWebIconFetcherDelegate* delegate)
-        : m_fetcher(0)
-        , m_delegate(delegate)
-    {
-    }
-
-    virtual void finishedFetchingIcon(PassRefPtr<SharedBuffer> iconData)
-    {
-        COMPtr<MemoryStream> memoryStream;
-        if (iconData)
-            memoryStream = MemoryStream::createInstance(iconData);
-
-        m_delegate->finishedLoadingIcon(m_fetcher, memoryStream.get());
-
-        delete this;
-    }
-
-   void setFetcher(WebIconFetcher *fetcher) { m_fetcher = fetcher; }
-    
-private:
-    WebIconFetcher* m_fetcher;
-    COMPtr<IWebIconFetcherDelegate> m_delegate;
-};
-
-// WebIconFetcher -------------------------------------------------------------------
-
-WebIconFetcher* WebIconFetcher::fetchApplicationIcon(Frame* frame, IWebIconFetcherDelegate* delegate)
-{
-    WebIconFetcherClient* client = new WebIconFetcherClient(delegate);
-    
-    RefPtr<IconFetcher> fetcher = IconFetcher::create(frame, client);
-    
-    if (!fetcher)
-        return 0;
-    
-    COMPtr<WebIconFetcher> iconFetcher = new WebIconFetcher(fetcher.release());
-    client->setFetcher(iconFetcher.get());
-
-    return iconFetcher.releaseRef();
-}
-
-WebIconFetcher::WebIconFetcher(PassRefPtr<IconFetcher> iconFetcher)
-    : m_refCount(0)
-    , m_iconFetcher(iconFetcher)
-{
-    gClassCount++;
-}
-
-WebIconFetcher::~WebIconFetcher()
-{
-    gClassCount--;
-}
-
-// IUnknown -------------------------------------------------------------------
-
-HRESULT STDMETHODCALLTYPE WebIconFetcher::QueryInterface(REFIID riid, void** ppvObject)
-{
-    *ppvObject = 0;
-    if (IsEqualGUID(riid, IID_IUnknown))
-        *ppvObject = static_cast<IUnknown*>(this);
-    else if (IsEqualGUID(riid, IID_IWebIconFetcher))
-        *ppvObject = static_cast<IWebIconFetcher*>(this);
-    else
-        return E_NOINTERFACE;
-
-    AddRef();
-    return S_OK;
-}
-
-ULONG STDMETHODCALLTYPE WebIconFetcher::AddRef()
-{
-    return ++m_refCount;
-}
-
-ULONG STDMETHODCALLTYPE WebIconFetcher::Release()
-{
-    ULONG newRef = --m_refCount;
-    if (!newRef)
-        delete this;
-
-    return newRef;
-}
-
-// IUnknown -------------------------------------------------------------------
-
-HRESULT STDMETHODCALLTYPE WebIconFetcher::cancel()
-{
-    m_iconFetcher->cancel();
-
-    return S_OK;
-}
diff --git a/WebKit/win/WebIconFetcher.h b/WebKit/win/WebIconFetcher.h
deleted file mode 100644
index 694aebf..0000000
--- a/WebKit/win/WebIconFetcher.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2008 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. ``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
- * 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 WebIconFetcher_h
-#define WebIconFetcher_h
-
-#include "WebKit.h"
-#include <WebCore/IconFetcher.h>
-
-class WebIconFetcher : public IWebIconFetcher {
-public:
-    static WebIconFetcher* fetchApplicationIcon(WebCore::Frame*, IWebIconFetcherDelegate*);
-
-    // IUnknown
-    virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject);
-    virtual ULONG STDMETHODCALLTYPE AddRef();
-    virtual ULONG STDMETHODCALLTYPE Release();
-
-    // IWebIconFetcher
-    virtual HRESULT STDMETHODCALLTYPE cancel();
-
-private:
-    WebIconFetcher(PassRefPtr<WebCore::IconFetcher>);
-    ~WebIconFetcher();
-
-    ULONG m_refCount;
-    RefPtr<WebCore::IconFetcher> m_iconFetcher;
-};
-
-#endif // WebIconFetcher_h
diff --git a/WebKit/win/WebKit.vcproj/Interfaces.vcproj b/WebKit/win/WebKit.vcproj/Interfaces.vcproj
index 0971602..0f3b6a7 100644
--- a/WebKit/win/WebKit.vcproj/Interfaces.vcproj
+++ b/WebKit/win/WebKit.vcproj/Interfaces.vcproj
@@ -1004,26 +1004,6 @@
 			</FileConfiguration>
 		</File>
 		<File
-			RelativePath="..\Interfaces\IWebIconFetcher.idl"
-			>
-			<FileConfiguration
-				Name="Debug|Win32"
-				ExcludedFromBuild="true"
-				>
-				<Tool
-					Name="VCMIDLTool"
-				/>
-			</FileConfiguration>
-			<FileConfiguration
-				Name="Release|Win32"
-				ExcludedFromBuild="true"
-				>
-				<Tool
-					Name="VCMIDLTool"
-				/>
-			</FileConfiguration>
-		</File>
-		<File
 			RelativePath="..\Interfaces\IWebInspector.idl"
 			>
 			<FileConfiguration
diff --git a/WebKit/win/WebKit.vcproj/WebKit.vcproj b/WebKit/win/WebKit.vcproj/WebKit.vcproj
index 822e13c..9740947 100644
--- a/WebKit/win/WebKit.vcproj/WebKit.vcproj
+++ b/WebKit/win/WebKit.vcproj/WebKit.vcproj
@@ -612,10 +612,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\WebIconFetcher.h"
-				>
-			</File>
-			<File
 				RelativePath="..\WebInspector.h"
 				>
 			</File>
@@ -1036,10 +1032,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\WebIconFetcher.cpp"
-				>
-			</File>
-			<File
 				RelativePath="..\WebInspector.cpp"
 				>
 			</File>

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list