2011-04-12  Oliver Hunt  <oliver@apple.com>

        Reviewed by Geoffrey Garen.

        Make API callback objects use weak handles to run their finalizers
        https://bugs.webkit.org/show_bug.cgi?id=58389

        Make the API object's private data struct act as a finalizer for
        an api object if the callback object has a API defined finalizer.

        * API/JSCallbackObject.cpp:
        (JSC::JSCallbackObjectData::finalize):
        * API/JSCallbackObject.h:
        * API/JSCallbackObjectFunctions.h:
        (JSC::::init):
        * heap/Handle.h:
2011-04-12  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Geoffrey Garen.

        Cleaned up hash traits, and added hash traits for handles
        https://bugs.webkit.org/show_bug.cgi?id=58381

        * dom/QualifiedName.h: Use new SimpleClassHashTraits to avoid duplication.

        * platform/KURL.h:
        (WebCore::KURL::KURL):
        (WebCore::KURL::isHashTableDeletedValue): Added explicit hash table
        deleted value constructor, to be more explicit and enable use of
        SimpleClassHashTraits.

        * platform/KURLHash.h: Use new SimpleClassHashTraits to avoid duplication.

        * platform/graphics/FontCache.cpp: Ditto.
        * platform/network/ProtectionSpaceHash.h: Ditto.
        * svg/properties/SVGAnimatedPropertyDescription.h: Ditto.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@83664 268f45cc-cd09-0410-ab3c-d52691b4dbfc
14 files changed