platform/mac/editing/input/devanagari-ligature.html is flaky on Yosemite, ligature fails to form
https://bugs.webkit.org/show_bug.cgi?id=138683

Reviewed by Darin Adler.

This patch changes how we check fonts for equality. In particular, this patch adds a
objectForEqualityCheck() to Cocoa's FontPlatformData, and callers should pass this object
to CFEqual() to determine if two platform fonts are equal. This patch also migrates all
call sites to using this function.

I don't want to implement operator==() because there are many cases where the same font
is compared against many others, and this solution is cleaner than caching a comparison
object inside the font object itself.

No new tests because this is covered by platform/mac/editing/input/devanagari-ligature.html.

* platform/graphics/FontPlatformData.h:
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::objectForEqualityCheck):
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
* platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
(WebCore::GlyphPage::fill):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore::SimpleFontData::canRenderCombiningCharacterSequence):
* platform/spi/cocoa/CoreTextSPI.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
TestWebKitAPI build is broken when ASan is enabled
https://bugs.webkit.org/show_bug.cgi?id=139902

Reviewed by Darin Adler.

* TestWebKitAPI/Configurations/InjectedBundle.xcconfig:
* TestWebKitAPI/Configurations/TestWebKitAPILibrary.xcconfig:
Inherit linker flags from DebugRelease, which respects ASAN.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177690 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Only call shouldTransformGraph once per graph
https://bugs.webkit.org/show_bug.cgi?id=139910

Reviewed by Sam Weinig.

Don't call shouldTransformGraph for each node in the object graph. Instead, call it once
and then transform the entire graph if needed.

* Shared/mac/ObjCObjectGraph.h:
* Shared/mac/ObjCObjectGraph.mm:
(WebKit::shouldTransformGraph):
(WebKit::transformGraph):
(WebKit::ObjCObjectGraph::transform):
(WebKit::shouldTransform): Deleted.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177691 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rename WebContext to WebProcessPool
https://bugs.webkit.org/show_bug.cgi?id=139909

Rubber-stamped by Anders Carlsson.

Source/WebCore:

Merge SessionID and SessionIDHash into one file to make auto-generation of
HashMaps with SessionIDs easier.

* WebCore.xcodeproj/project.pbxproj:
* loader/cache/MemoryCache.h:
* page/SessionID.h:
(WTF::SessionIDHash::hash):
(WTF::SessionIDHash::equal):
(WTF::HashTraits<WebCore::SessionID>::emptyValue):
(WTF::HashTraits<WebCore::SessionID>::constructDeletedValue):
(WTF::HashTraits<WebCore::SessionID>::isDeletedValue):
* page/SessionIDHash.h: Removed.

Source/WebKit2:

- Major renames:
    WebContext -> WebProcessPool
    WebContextConfiguration -> WebProcessPoolConfiguration
    API::ContextConfiguration -> API::ProcessPoolConfiguration

* File list elided *



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix UserMessage::transform to only call shouldTransform once
https://bugs.webkit.org/show_bug.cgi?id=139911

Reviewed by Sam Weinig.

Also, make it possible for transformers to return null objects and change the transformers
to return the passed in object when there's no need to do a transform.

* Shared/UserData.cpp:
(WebKit::transformGraph):
(WebKit::UserData::transform):
(WebKit::UserData::encode): Deleted.
(WebKit::UserData::decode): Deleted.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::apiObjectByConvertingFromHandles):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177693 268f45cc-cd09-0410-ab3c-d52691b4dbfc