ImageDiff builds for the simulator when running iOS layout tests
https://bugs.webkit.org/show_bug.cgi?id=135270

Reviewed by Simon Fraser.

* Scripts/build-imagediff: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Allow for multiple DumpRenderTree and WebKitTestRunner instances in the iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=135272

Reviewed by Simon Fraser.

* DumpRenderTree/mac/DumpRenderTree.mm:
(dumpRenderTree): Remove hard-coding of FIFO paths.
(-[DumpRenderTree applicationDidEnterBackground:]): Create background task.
(DumpRenderTreeMain): Set DumpRenderTree as UIApplication delegate.
* DumpRenderTree/mac/DumpRenderTreeMac.h: bgTask ivar.
* Scripts/old-run-webkit-tests: Update FIFO paths for ORWT.
* WebKitTestRunner/TestController.cpp: Remove hard-coding of FIFO paths.
* WebKitTestRunner/ios/TestControllerIOS.mm: Move dup2 calls to platformInitialize
* WebKitTestRunner/ios/mainIOS.mm: bgTask ivar.
(-[WebKitTestRunnerApp applicationDidEnterBackground:]): Create background task.
(main): Set WebKitTestRunnerApp as UIApplication delegate.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171687 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JSContext Inspector: crash when using step-into
https://bugs.webkit.org/show_bug.cgi?id=135345

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-07-28
Reviewed by Timothy Hatcher.

* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::stepInto):
Null check m_listener since it may not be set.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171688 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make sure that we don't use non-speculative BooleanToNumber for a speculative Branch
https://bugs.webkit.org/show_bug.cgi?id=135350
<rdar://problem/17509889>

Reviewed by Mark Hahnenberg and Oliver Hunt.
        
If we have an exiting node that uses a conversion node, then that exiting node
needs to have a Phantom after it for the the original node. But we can't do that
for Branch because https://bugs.webkit.org/show_bug.cgi?id=126778.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::clearPhantomsAtEnd):
* tests/stress/branch-check-int32-on-boolean-to-number-untyped.js: Added.
(foo):
(test):
* tests/stress/branch-check-number-on-boolean-to-number-untyped.js: Added.
(foo):
(test):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Font Loading] Update Font Loading Code
https://bugs.webkit.org/show_bug.cgi?id=135340

Reviewed by Antti Koivisto.

Update the Font Loading code to build again, as trunk has evolved
since the feature was originally written. Mostly, this requires
updating the code to work with the new Font representation.

The original tests were enabled only for the Chromium port.
They will need to be updated when the feature is enabled by default.

* WebCore.xcodeproj/project.pbxproj: Add missing files.
* css/FontLoader.cpp: Update to new Font representation.
(WebCore::LoadFontCallback::createFromParams):
(WebCore::LoadFontCallback::~LoadFontCallback):
(WebCore::FontLoader::loadFont):
(WebCore::FontLoader::checkFont):
(WebCore::applyPropertyToCurrentStyle):
(WebCore::FontLoader::resolveFontStyle):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171690 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION: JSObjectSetPrototype() does not work on result of JSGetGlobalObject()
https://bugs.webkit.org/show_bug.cgi?id=135322

Reviewed by Oliver Hunt.

The prototype chain of the JSProxy object should match that of the JSGlobalObject. 

This is a separate but related issue with JSObjectSetPrototype which doesn't correctly 
account for JSProxies. I also audited the rest of the C API to check that we correctly 
handle JSProxies in all other situations where we expect a JSCallbackObject of some sort
and found some SPI calls (JSObject*PrivateProperty) that didn't behave correctly when 
passed a JSProxy.

I also added some new tests for these cases.

* API/JSObjectRef.cpp:
(JSObjectSetPrototype):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):
* API/JSWeakObjectMapRefPrivate.cpp:
* API/tests/CustomGlobalObjectClassTest.c:
(globalObjectSetPrototypeTest):
(globalObjectPrivatePropertyTest):
* API/tests/CustomGlobalObjectClassTest.h:
* API/tests/testapi.c:
(main):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171691 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r160806): CSS zoom property doesn't work on anything inside anchors.
<https://webkit.org/b/135344>
<rdar://problem/17759577>

Source/WebCore:
When DeprecatedStyleBuilder applies the CSS zoom property (ApplyPropertyZoom)
it first resets the "effective zoom" by calling RenderStyle::setEffectiveZoom().

This mechanism was not resistent to being called multiple times, due to the
optimization in RenderStyle::setZoom() to avoid copy-on-writing the shared data
when setting some property to the already-set value.

The bug would happen in this sequence:

ApplyPropertyZoom:
    - setEffectiveZoom(1);
    - setZoom(2); // this updates the effective zoom
ApplyPropertyZoom:
    - setEffectiveZoom(1);
    - setZoom(2); // this doesn't update the effective zoom

When we run the second setZoom(2); call, the RenderStyle's zoom value is 2
already and we'll early return without updating the effective zoom.

This change moves the updating of the effective zoom in setZoom() to take place
before the early return due to overwriting with the same value.

Note: the fact that we're apply the zoom property twice is an inefficiency that
we should figure out a way to avoid in the future.

Reviewed by Simon Fraser.

Test: fast/css/zoom-inside-link.html

* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::setZoom):

LayoutTests:
Reviewed by Simon Fraser.

* fast/css/zoom-inside-link-expected.html: Added.
* fast/css/zoom-inside-link.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add support for running the Clang static analyzer when building WebKit and JSC
https://bugs.webkit.org/show_bug.cgi?id=134955

Reviewed by Brent Fulgham.

* Scripts/build-jsc: Added command line options -[no]-analyze (disabled by default).
* Scripts/build-webkit: Add --analyze command line option to build-webkit to enable
running the Clang static analyzer.
* Scripts/webkitdirs.pm:
(XcodeStaticAnalyzerOption): Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171693 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix after r171682.

* replay/EncodedValue.h: Don't mark the inlined Vector<char> specialization
as an exported symbol.

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