Reviewed by Maciej
authorbeidson <beidson@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Jul 2006 09:57:23 +0000 (09:57 +0000)
committerbeidson <beidson@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Jul 2006 09:57:23 +0000 (09:57 +0000)
commitf0db5fddde2284a455ccf2f56270bffb5d819aab
treef4df4947afdc05170679634610f0ffb0a99eb406
parenta448faffe8f9ac8f491dee72868144d808e16d71
    Reviewed by Maciej

        SQLite Icon DB now fully replicates functionality of the old DB, including pruning to keep unused
        information out to keep down disk usage.  For now, it is still off by default, as the critical
        feature of importing old icons into the new DB is still unrealized.
        If you'd like to test, add #define ICONDEBUG to your WebKitPrefix.h

        * icon/IconDatabase.cpp:
        (WebCore::IconDatabase::IconDatabase):
        (WebCore::IconDatabase::open):
          -Sets up a timer for initial pruning
        (WebCore::IconDatabase::iconForPageURL):
          -Switched away from "dirty blob hack" as the problem is provisionally solved
        (WebCore::IconDatabase::retainIconForURL):
        (WebCore::IconDatabase::releaseIconForURL):
          -Same as found in WebKit
        (WebCore::IconDatabase::totalRetainCountForIconURL):
          -Adds up all retainers of icon
        (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
          -Wipes an Icon table entry out
        (WebCore::IconDatabase::establishTemporaryIconIDForIconURL):
        (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
        (WebCore::IconDatabase::establishIconIDForIconURL):
        (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
          -Added ability to get an iconID without creating a new one if a lookup is all
           that is genuinely wanted
        (WebCore::IconDatabase::pruneUnreferencedIcons):
        (WebCore::IconDatabase::pruneUnretainedIcons):
          -Called on a timer on DB startup to clean it out
        * icon/IconDatabase.h:
        * icon/SiteIcon.cpp:
        (SiteIcon::SiteIcon):
        (SiteIcon::~SiteIcon):
          -Deletes the image on deletion
        (SiteIcon::getImage):
          -Cut down on no-longer-necessary debug info

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/icon/IconDatabase.cpp
WebCore/icon/IconDatabase.h
WebCore/icon/SiteIcon.cpp