WebKit-https.git
7 years agoREGRESSION(r155143): Build failures on GTK port with Clang and libstdc++ < 4.8.1
zandobersek@gmail.com [Sat, 7 Sep 2013 06:25:14 +0000 (06:25 +0000)]
REGRESSION(r155143): Build failures on GTK port with Clang and libstdc++ < 4.8.1
https://bugs.webkit.org/show_bug.cgi?id=120896

Reviewed by Anders Carlsson.

The GTK port currently only permits using the libstdc++ standard library when compiling with
Clang. After r155143, build failures are occurring when using Clang and libstdc++ that predates
the 4.8.0 release due to the use of std::is_trivially_destructible that isn't available in
libstdc++ < 4.8.0.

To not add additional special casing, the GTK port should move onto requiring libstdc++ >= 4.8.1
when compiling with the Clang compiler. Version 4.8.1 was chosen since it's C++11 feature-complete.
This strict requirement is possible as compiling the GTK port with the Clang compiler is not really
widespread, so we can afford to adjust the required dependencies to match other ports' progression
instead of modifying the code.

* Source/autotools/CheckSystemAndBasicDependencies.m4: If the detected compiler is Clang, also check
that the libstdc++ standard library is used by testing for the __GLIBCXX__ macro that should be defined
to the value lesser than the '20130531', the date stamp used by the 4.8.1 release of libstdc++. Since
possible future releases of the 4.6 or 4.7 series of libstdc++ will also match this check due to a newer
date stamp contained in __GLIBCXX__, the std::is_trivially_destructible struct is also used so the
compilation will fail if the libstdc++ that's used is older than allowed (and therefor does not support
the feature). If the check fails, a fatal error is thrown, describing the requirement. Everything carries
on as normal otherwise.

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

7 years ago[GTK] Bump the required Clang version to 3.2
zandobersek@gmail.com [Sat, 7 Sep 2013 06:13:27 +0000 (06:13 +0000)]
[GTK] Bump the required Clang version to 3.2
https://bugs.webkit.org/show_bug.cgi?id=112537

Reviewed by Gustavo Noronha Silva.

* Source/autotools/CheckSystemAndBasicDependencies.m4: Require the Clang 3.2 stack
when the Clang compiler is specified.

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

7 years ago[CSS Shapes] Floats with shape-outside aren't painting in the correct order
bjonesbe@adobe.com [Sat, 7 Sep 2013 06:05:23 +0000 (06:05 +0000)]
[CSS Shapes] Floats with shape-outside aren't painting in the correct order
https://bugs.webkit.org/show_bug.cgi?id=118492

Reviewed by Darin Adler.

Source/WebCore:

When removing the old positioning behavior, the code that makes a
float with shape-outside gain a layer was left behind. This patch
removes that, so now floats with shape-outside are painted just like
floats without shape-outside.

Also remove the isFloatingWithShapeOutside helper method because its
use is now somewhat redundant, and the check it does is now only
needed in one place.

Test: fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html

* rendering/RenderBox.h:
(WebCore::RenderBox::shapeOutsideInfo):
* rendering/RenderObject.h:
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::isEnabledFor):

LayoutTests:

Update tests to reflect correct painting order. Add a new test for the
correct painting behavior.

* csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-stacked-000.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html: Added.

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

7 years agoFTL should support Call/Construct in the worst way possible
fpizlo@apple.com [Sat, 7 Sep 2013 05:47:57 +0000 (05:47 +0000)]
FTL should support Call/Construct in the worst way possible
https://bugs.webkit.org/show_bug.cgi?id=120916

Reviewed by Oliver Hunt.

This adds support for Call/Construct by just calling out to C code that uses
the JSC::call/JSC::construct runtime functions for making calls. This is slow
and terrible, but it dramatically extends FTL coverage.

Supporting calls in a meaningful way meant also supporting
GlobalVarWatchpoint.

The extension of coverage helped to find a bunch of bugs:

- ObjectOrOtherUse was claimed to be supported in the FTL but speculate()
  didn't support it. That means that any node with an ObjectOrOtherUse edge
  that got DCE'd would cause the FTL to ICE.

- There was a bad fall-through compileCompareStrictEq() that led to ICE.

- The OSR exit reconstruction code was assuming it could do fast checks on
  node->child1() before even determining the type of node; that crashes if
  the node is HasVarArgs. Fixed by checking HasVarArgs first.

- The OSR exit compiler was using the wrong peekOffset for CArgumentGetter.
  The default is 1, which assumes that you didn't push anything onto the
  stack after getting called. The OSR exit thunks push FP, so the offset
  should be 2.

This passes stress tests and is probably huge performance regression if you
--useExperimentalFTL=true. The regression will be fixed in
https://bugs.webkit.org/show_bug.cgi?id=113621.

* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGlobalVarWatchpoint):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEq):
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::speculate):
(JSC::FTL::LowerDFGToLLVM::speculateObjectOrOther):
(JSC::FTL::LowerDFGToLLVM::addExitArgumentForNode):
* ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::compileStub):

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

7 years agoAdd a new smart pointer type for fastMalloc'ed memory
andersca@apple.com [Sat, 7 Sep 2013 05:36:45 +0000 (05:36 +0000)]
Add a new smart pointer type for fastMalloc'ed memory
https://bugs.webkit.org/show_bug.cgi?id=120911

Reviewed by Andreas Kling.

Source/WebCore:

Update for WTF changes.

* platform/network/cf/FormDataStreamCFNet.cpp:
(WebCore::advanceCurrentStream):

Source/WTF:

Due to an oversight on my part, Vector::releaseBuffer() currently returns an OwnPtr
which means that its data will be freed with operator delete instead of fastFree.

Fix this by introducing a new MllocPtr smart pointer class and change Vector::releaseBuffer() to return it instead.

* WTF.pro:
* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
* wtf/FastAllocBase.h:
* wtf/MallocPtr.h: Added.
* wtf/Vector.h:
* wtf/text/StringBuffer.h:
* wtf/text/StringImpl.h:

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

7 years agoWeb Inspector: Lint JavaScript and CSS for minor issues
commit-queue@webkit.org [Sat, 7 Sep 2013 05:34:54 +0000 (05:34 +0000)]
Web Inspector: Lint JavaScript and CSS for minor issues
https://bugs.webkit.org/show_bug.cgi?id=120884

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-09-06
Reviewed by Timothy Hatcher.

JS, caught a bunch of missing semicolons but at least one possible
issue with duplicate object literal keys in CSSKeywordCompletions.

CSS, cause some duplicate properties, an invalid property value,
and some "0px" => "0" cleanup.

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

7 years agoInterpolate between CSS filter() and cached images
krit@webkit.org [Sat, 7 Sep 2013 05:28:23 +0000 (05:28 +0000)]
Interpolate between CSS filter() and cached images
https://bugs.webkit.org/show_bug.cgi?id=120602

Reviewed by Simon Fraser.

Source/WebCore:

Interpolate from a filter() image function to a url() image reference and
the other way around, if the input image on the filter function is the same
as the referenced image on url().

* page/animation/CSSPropertyAnimation.cpp: Replaced old
    filterBlend function with blendFilter function which is more generic
    and can be reused in multiple places.
(WebCore::blendFilterOperations):
(WebCore::blendFunc):
(WebCore::blendFilter):

LayoutTests:

Add aditional test for interpolation from url to a -webkit-filter function
and the other way around. Added an additional test to make sure that different
input images don't make start and end interpolate.

* fast/filter-image/filter-image-animation.html:

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

7 years agojsc shell should destroy VM as a workaround for LLVM's exit-time destructors
fpizlo@apple.com [Sat, 7 Sep 2013 05:25:55 +0000 (05:25 +0000)]
jsc shell should destroy VM as a workaround for LLVM's exit-time destructors
https://bugs.webkit.org/show_bug.cgi?id=120921

Reviewed by Oliver Hunt.

LLVM's exit-time destructors will fire when we exit. If there is an on-going
FTL compile at exit, which will happen if the VM that triggered the compile
isn't shut down, then we will crash.

We should get rid of LLVM's exit-time destructors. But before we do that, we
should just do a clean VM shutdown to suppress spurious crashes. This will
help in expanding LLVM coverage for now.

* jsc.cpp:
(jscmain):

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

7 years agoREGRESSION(r155100): animations/cross-fade-background-image.html fails
rniwa@webkit.org [Sat, 7 Sep 2013 05:24:33 +0000 (05:24 +0000)]
REGRESSION(r155100): animations/cross-fade-background-image.html fails
https://bugs.webkit.org/show_bug.cgi?id=120923

Add the failing test expectation.

* platform/mac/TestExpectations:

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

7 years agocompositing/overlap-blending//children-opacity-huge.html and children-opacity-no...
rniwa@webkit.org [Sat, 7 Sep 2013 05:18:51 +0000 (05:18 +0000)]
compositing/overlap-blending//children-opacity-huge.html and children-opacity-no-overlap.html are failing
https://bugs.webkit.org/show_bug.cgi?id=120922

Add the failing test expectations.

* platform/mac/TestExpectations:

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

7 years ago[EFL] Unreviewed gardening.
jinwoo7.song@samsung.com [Sat, 7 Sep 2013 04:59:39 +0000 (04:59 +0000)]
[EFL] Unreviewed gardening.

* platform/efl/TestExpectations: Removed passing test.
* platform/efl/svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures-expected.txt: Added.

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

7 years agoUnreviewed, rolling out r155196.
rniwa@webkit.org [Sat, 7 Sep 2013 04:40:50 +0000 (04:40 +0000)]
Unreviewed, rolling out r155196.
http://trac.webkit.org/changeset/155196
https://bugs.webkit.org/show_bug.cgi?id=120919

Broke 16 tests on build.webkit.org (Requested by rniwa on
#webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2013-09-06

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._set_up_run):

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

7 years agoElements retained by AccessibilityImageMapLink leak
rniwa@webkit.org [Sat, 7 Sep 2013 04:15:35 +0000 (04:15 +0000)]
Elements retained by AccessibilityImageMapLink leak
https://bugs.webkit.org/show_bug.cgi?id=120917

Reviewed by Chris Fleizach.

Merge https://chromium.googlesource.com/chromium/blink/+/df0bd288efe65e5e38425fbdcdfc68b5a2a79e42

Unfortunately, the test added by the Blink change doesn't reproduce a leak in WebKit.

* accessibility/AccessibilityImageMapLink.cpp:
(WebCore::AccessibilityImageMapLink::detachFromParent):
* accessibility/AccessibilityImageMapLink.h:
* accessibility/AccessibilityMockObject.h:
(WebCore::AccessibilityMockObject::detachFromParent):

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

7 years agoMake Obj-C bindings generator less #include-happy.
akling@apple.com [Sat, 7 Sep 2013 02:38:12 +0000 (02:38 +0000)]
Make Obj-C bindings generator less #include-happy.
<https://webkit.org/b/120913>

Reviewed by Anders Carlsson.

Knock out an old FIXME in CodeGeneratorObjC.pm and avoid including unrelated
interface declarations from implementation files where they are not needed.

* bindings/scripts/CodeGeneratorObjC.pm:
(GenerateImplementation):

    Only include DOMFooInternal.h relevant to the current interface.

* bindings/scripts/test/ObjC/*

    Rebaseline Obj-C bindings tests now that they include fewer things.

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

7 years agoRemove old workaround for Nokia's Harmattan GCC on Qt/ARM.
akling@apple.com [Sat, 7 Sep 2013 02:35:57 +0000 (02:35 +0000)]
Remove old workaround for Nokia's Harmattan GCC on Qt/ARM.
<https://webkit.org/b/37253>

Reviewed by Anders Carlsson.

Apparently this was a workaround for GCC getting stuck in an infinite loop
when building for ARM in a Nokia SDK over 2 years ago.

I think it's safe to remove this now, but if I'm wrong, and you're reading
this ChangeLog wondering why I did this to you, feel free to put it back in.

* wtf/PassRefPtr.h:
(WTF::refIfNotNull):
(WTF::derefIfNotNull):

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

7 years agoRemove unused RefPtr(PlacementNewAdopt) constructor.
akling@apple.com [Sat, 7 Sep 2013 02:34:32 +0000 (02:34 +0000)]
Remove unused RefPtr(PlacementNewAdopt) constructor.
<https://webkit.org/b/120914>

Reviewed by Anders Carlsson.

* wtf/RefPtr.h:

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

7 years agoRebaseline bindings tests after Swedish breakage.
akling@apple.com [Sat, 7 Sep 2013 02:32:40 +0000 (02:32 +0000)]
Rebaseline bindings tests after Swedish breakage.

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

7 years agoDon't include Document.h from JSDOMBinding.h
akling@apple.com [Sat, 7 Sep 2013 02:28:26 +0000 (02:28 +0000)]
Don't include Document.h from JSDOMBinding.h
<https://webkit.org/b/120909>

Reviewed by Anders Carlsson.

Move DOMConstructorWithDocument out of JSDOMBinding.h to its own header.
This was the only part of JSDOMBinding.h that needed Document's definition.

This reduces the include dependency graph of many bindings files.

* WebCore.xcodeproj/project.pbxproj:
* bindings/js/DOMConstructorWithDocument.h:
* bindings/js/JSDOMBinding.cpp:
* bindings/js/JSDOMBinding.h:
* bindings/scripts/CodeGeneratorJS.pm:
* bindings/scripts/CodeGeneratorGObject.pm:

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

7 years agoRange::ownerDocument should return Document&
rniwa@webkit.org [Sat, 7 Sep 2013 02:08:06 +0000 (02:08 +0000)]
Range::ownerDocument should return Document&
https://bugs.webkit.org/show_bug.cgi?id=120908

Reviewed by Andreas Kling.

Source/WebCore:

Return Document& in Range::ownerDocument(). Also make setDocument take Document& so that this invariant is self-evident.

* bindings/objc/DOM.mm:
(-[DOMRange boundingBox]):
(-[DOMRange renderedImageForcingBlackText:]):
(-[DOMRange textRects]):
* dom/Range.cpp:
(WebCore::Range::setDocument):
(WebCore::Range::setStart):
(WebCore::Range::setEnd):
(WebCore::Range::selectNode):
(WebCore::Range::selectNodeContents):
* dom/Range.h:
(WebCore::Range::ownerDocument):
* editing/AlternativeTextController.cpp:
(WebCore::AlternativeTextController::handleAlternativeTextUIResult):
* editing/Editor.cpp:
(WebCore::Editor::avoidIntersectionWithDeleteButtonController):
(WebCore::isFrameInRange):
(WebCore::Editor::countMatchesForText):
* editing/EditorCommand.cpp:
(WebCore::unionDOMRanges):
* editing/TextCheckingHelper.cpp:
(WebCore::TextCheckingHelper::unifiedTextCheckerEnabled):
* editing/TextIterator.cpp:
(WebCore::plainText):
(WebCore::findPlainText):
* editing/htmlediting.cpp:
(WebCore::extendRangeToWrappingNodes):
* editing/markup.cpp:
(WebCore::createMarkup):
(WebCore::createFragmentFromText):
* page/DragController.cpp:
(WebCore::documentFragmentFromDragData):
(WebCore::DragController::concludeEditDrag):
* page/Page.cpp:
(WebCore::Page::rangeOfString):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::absoluteBoundingBoxRectForRange):
* testing/Internals.cpp:
(WebCore::Internals::addTextMatchMarker):

Source/WebKit/blackberry:

* WebKitSupport/InPageSearchManager.cpp:
(BlackBerry::WebKit::InPageSearchManager::findNextString):
(BlackBerry::WebKit::InPageSearchManager::findAndMarkText):
(BlackBerry::WebKit::InPageSearchManager::clearTextMatches):
(BlackBerry::WebKit::InPageSearchManager::setActiveMatchAndMarker):
(BlackBerry::WebKit::InPageSearchManager::frameUnloaded):
(BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):

Source/WebKit/mac:

* WebView/WebPDFView.mm:
(isFrameInRange):

Source/WebKit2:

* WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
(-[WKDOMRange textRects]):

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

7 years ago[Windows] StructuredExceptionHandlerSuppressor Causes Bad Interactions with Support...
bfulgham@apple.com [Fri, 6 Sep 2013 23:46:01 +0000 (23:46 +0000)]
[Windows] StructuredExceptionHandlerSuppressor Causes Bad Interactions with Support Libraries
https://bugs.webkit.org/show_bug.cgi?id=120901

Reviewed by Anders Carlsson.

Change from old "crash on any exception" implementation to a new version that leaves normal
exception handling infrastructure in place for use by support libraries. We check exceptions
and decide whether to abort or not based on the failure type.

* WebCore.vcxproj/WebCore.vcxproj: Add new implementation files.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* platform/graphics/ca/win/LayerChangesFlusher.cpp:
(WebCore::LayerChangesFlusher::hookCallback): Allocate handler struct on stack.
* platform/win/StructuredExceptionHandlerSuppressor.cpp: Added.
(exceptionShouldTerminateProgram): New.
(exceptionHandler): New.
(WebCore::StructuredExceptionHandlerSuppressor::StructuredExceptionHandlerSuppressor): Moved
from header, and updated to add our new exception handler.
(WebCore::StructuredExceptionHandlerSuppressor::~StructuredExceptionHandlerSuppressor): Moved
from header.
* platform/win/StructuredExceptionHandlerSuppressor.h: Move implementation of constructor and
destructor from header file.
* platform/win/makesafeseh.asm: Added.

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

7 years agoRefactor XMLDocumentParser to defer creation of XMLErrors until error occurs
vivek.vg@samsung.com [Fri, 6 Sep 2013 23:35:28 +0000 (23:35 +0000)]
Refactor XMLDocumentParser to defer creation of XMLErrors until error occurs
https://bugs.webkit.org/show_bug.cgi?id=120850

Reviewed by Darin Adler.

XMLErrors is created as soon as XMLDocumentParser is constructed. It may not be required
for all the valid XML documents. Deferring its creation until an error for the invalid
XML document.

No new tests as code refactoring.

* xml/parser/XMLDocumentParser.cpp:
(WebCore::XMLDocumentParser::handleError):
(WebCore::XMLDocumentParser::insertErrorMessageBlock):
* xml/parser/XMLDocumentParser.h:
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):
* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):

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

7 years agoBUILD FIX (r155171): INSTALL_PATH_PREFIX should no longer be used beneath BUILT_PRODU...
ddkilzer@apple.com [Fri, 6 Sep 2013 23:30:35 +0000 (23:30 +0000)]
BUILD FIX (r155171): INSTALL_PATH_PREFIX should no longer be used beneath BUILT_PRODUCTS_DIR in HEADER_SEARCH_PATHS for iOS

* Configurations/Base.xcconfig:
(HEADER_SEARCH_PATHS): Change
$(BUILT_PRODUCTS_DIR)/$(INSTALL_PATH_PREFIX)/usr/local/include to
$(BUILT_PRODUCTS_DIR)/usr/local/include.

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

7 years agoFTL ArithMod Int32Use doesn't check for negative zero correctly
fpizlo@apple.com [Fri, 6 Sep 2013 23:05:00 +0000 (23:05 +0000)]
FTL ArithMod Int32Use doesn't check for negative zero correctly
https://bugs.webkit.org/show_bug.cgi?id=120905

Reviewed by Mark Hahnenberg.

* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileArithMod):

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

7 years agoRemove fastNew/fastDelete
andersca@apple.com [Fri, 6 Sep 2013 23:04:13 +0000 (23:04 +0000)]
Remove fastNew/fastDelete
https://bugs.webkit.org/show_bug.cgi?id=120904

Reviewed by Andreas Kling.

Source/WebCore:

Call operator delete directly.

* css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::adoptSelectorVector):

Source/WTF:

Remove the various variants of fastNew and fastDelete.

* wtf/FastAllocBase.h:

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

7 years agoFTL ArithNeg Int32Use doesn't check negative zero
fpizlo@apple.com [Fri, 6 Sep 2013 22:34:29 +0000 (22:34 +0000)]
FTL ArithNeg Int32Use doesn't check negative zero
https://bugs.webkit.org/show_bug.cgi?id=120900

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileArithNegate):

LayoutTests:

* fast/js/regress/script-tests/negative-zero-modulo.js:

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

7 years agoStop using fastNew/fastDelete in JavaScriptCore
andersca@apple.com [Fri, 6 Sep 2013 22:32:08 +0000 (22:32 +0000)]
Stop using fastNew/fastDelete in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=120898

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Change all the hash table members in ExecState to be OwnPtrs and use
adoptPtr instead. Also, since none of the hash tables can be null, change their getters
to return references and propagate the reference types wherever we know that a HashTable can't be null.

* interpreter/CallFrame.h:
(JSC::ExecState::arrayConstructorTable):
(JSC::ExecState::arrayPrototypeTable):
(JSC::ExecState::booleanPrototypeTable):
(JSC::ExecState::dataViewTable):
(JSC::ExecState::dateTable):
(JSC::ExecState::dateConstructorTable):
(JSC::ExecState::errorPrototypeTable):
(JSC::ExecState::globalObjectTable):
(JSC::ExecState::jsonTable):
(JSC::ExecState::numberConstructorTable):
(JSC::ExecState::numberPrototypeTable):
(JSC::ExecState::objectConstructorTable):
(JSC::ExecState::privateNamePrototypeTable):
(JSC::ExecState::regExpTable):
(JSC::ExecState::regExpConstructorTable):
(JSC::ExecState::regExpPrototypeTable):
(JSC::ExecState::stringConstructorTable):
(JSC::ExecState::promisePrototypeTable):
(JSC::ExecState::promiseConstructorTable):
(JSC::ExecState::promiseResolverPrototypeTable):
* runtime/ClassInfo.h:
(JSC::ClassInfo::propHashTable):
* runtime/Lookup.h:
(JSC::getStaticPropertySlot):
(JSC::getStaticFunctionSlot):
(JSC::getStaticValueSlot):
(JSC::lookupPut):
* runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::~VM):
* runtime/VM.h:

Source/WebCore:

Update for changes to JavaScriptCore.

* bindings/js/DOMObjectHashTableMap.h:
(WebCore::DOMObjectHashTableMap::get):
* bindings/js/JSDOMBinding.cpp:
(WebCore::getHashTableForGlobalData):
* bindings/js/JSDOMBinding.h:
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
* bindings/js/JSPluginElementFunctions.h:
(WebCore::pluginElementCustomGetOwnPropertySlot):
* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::deleteProperty):
(WebCore::JSStorage::putDelegate):
* bindings/scripts/CodeGeneratorJS.pm:
(hashTableAccessor):
(prototypeHashTableAccessor):
(constructorHashTableAccessor):
(GenerateGetOwnPropertySlotBody):
(GenerateImplementation):
(GenerateConstructorHelperMethods):

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

7 years agoThe 'failed' file should report collectionName/testName rather than just
fpizlo@apple.com [Fri, 6 Sep 2013 22:26:12 +0000 (22:26 +0000)]
The 'failed' file should report collectionName/testName rather than just
testName.

Rubber stamped by Mark Hahnenberg.

* Scripts/run-jsc-stress-tests:

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

7 years agoInclude Frame.h in fewer places.
akling@apple.com [Fri, 6 Sep 2013 22:08:14 +0000 (22:08 +0000)]
Include Frame.h in fewer places.
<https://webkit.org/b/120868>

Reviewed by Anders Carlsson.

- Move JSMainThreadExecState::instrumentFunctionCall() to a separate header.
  This avoids including InspectorInstrumentation.h from JSMainThreadExecState.h
  which caused all JS and Objective-C bindings to depend on Frame.h

- Out-of-line the three methods on FrameView that were operating on Frames.
  Most of the call sites were in FrameView.cpp so they will still get inlined.

- Removed GenericBinding.h, nothing was using it anyway.

After this, touching Frame.h and doing a (debug) rebuild goes from 9m30 to 3m30
on my laptop.

* GNUmakefile.list.am:
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/generic/GenericBinding.h: Removed.
* bindings/js/JSCallbackData.cpp:
* bindings/js/JSEventListener.cpp:
* bindings/js/JSMainThreadExecState.h:
* bindings/js/JSMainThreadExecStateInstrumentation.h: Added.
(WebCore::JSMainThreadExecState::instrumentFunctionCall):
* bindings/js/JSMutationCallback.cpp:
* bindings/js/ScheduledAction.cpp:
* css/DeprecatedStyleBuilder.cpp:
* css/ElementRuleCollector.cpp:
* css/MediaQueryEvaluator.cpp:
* css/SelectorChecker.h:
* dom/StyledElement.cpp:
* html/HTMLPlugInImageElement.cpp:
* inspector/InspectorPageAgent.h:
* inspector/NetworkResourcesData.h:
* inspector/PageRuntimeAgent.cpp:
* loader/cache/CachedImage.cpp:
* page/FrameView.cpp:
(WebCore::FrameView::renderView):
(WebCore::FrameView::mapFromLayoutToCSSUnits):
(WebCore::FrameView::mapFromCSSToLayoutUnits):
* page/FrameView.h:
* page/TouchAdjustment.cpp:
* rendering/RenderBoxModelObject.cpp:
* rendering/RenderLayer.cpp:
* rendering/RenderLayerCompositor.h:
* rendering/RenderText.cpp:
* svg/graphics/SVGImage.cpp:

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

7 years agoFix run-jsc-stress-tests to run on bots with old Ruby.
fpizlo@apple.com [Fri, 6 Sep 2013 22:04:38 +0000 (22:04 +0000)]
Fix run-jsc-stress-tests to run on bots with old Ruby.

Also make it create a repro file.

Rubber stamped by Mark Hahnenberg.

* Scripts/run-jsc-stress-tests:

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

7 years ago[Windows] Unreviewed gardening: Spell 'Suppressor' properly
bfulgham@apple.com [Fri, 6 Sep 2013 21:58:38 +0000 (21:58 +0000)]
[Windows] Unreviewed gardening: Spell 'Suppressor' properly

* WebCore.vcxproj/WebCore.vcxproj: Change StructuredExceptionHandlerSupressor to StructuredExceptionHandlerSuppressor
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
* platform/graphics/ca/win/LayerChangesFlusher.cpp:
(WebCore::LayerChangesFlusher::hookCallback): Ditto
* platform/win/StructuredExceptionHandlerSuppressor.h: Copied from platform/win/StructuredExceptionHandlerSupressor.h.
* platform/win/StructuredExceptionHandlerSupressor.h: Removed.

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

7 years ago[Windows] Implement text offset methods of IAccessibleText interface.
roger_fong@apple.com [Fri, 6 Sep 2013 21:32:53 +0000 (21:32 +0000)]
[Windows] Implement text offset methods of IAccessibleText interface.
https://bugs.webkit.org/show_bug.cgi?id=120820.
<rdar://problem/14925242>

Reviewed by Brenet Fulgham.

* AccessibleTextImpl.cpp:
(AccessibleText::get_textBeforeOffset):
(AccessibleText::get_textAfterOffset):
(AccessibleText::get_textAtOffset):
(AccessibleText::isInRange):
* AccessibleTextImpl.h:

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

7 years agoAdd new RenderBlockFlow class.
hyatt@apple.com [Fri, 6 Sep 2013 20:54:47 +0000 (20:54 +0000)]
Add new RenderBlockFlow class.
https://bugs.webkit.org/show_bug.cgi?id=120777

Reviewed by Beth Dakin.

This patch adds a new RenderBlockFlow class. The idea is to get all of the line/float/margin
code out of RenderBlock and into the subclass, and then we can make RenderBlock an abstract
base. This will save memory for all of the classes that derive from RenderBlock but have
their own layout systems (e.g., flexbox, grid, table), and it will let us tighten up
types to make it more clear when we're talking about block layout code vs. a more generic
block-level object that can have any kind of layout.

This patch adds the new class and it makes sure all the objects that should be block flows
inherit from the new class.

isBlockFlow() proved to be a problematic method (and was the source of regressions when I
landed this patch the first time). When the method was first implemented, it was added as
"I'm a block but not a table." and at the time table was the only subclass of block. However
when new subclasses were added, this function was never patched to account for them. This
means, for example, that flexible boxes and grids claim to be block flows in the codebase
and have for years. This is obviously wrong, since flexible boxes are not in fact block
flows, but because of this mistake, code has started relying on the incorrect behavior of
isBlockFlow() (form controls mostly).

What I've done to deal with this problem is renamed isBlockFlow() to be
isBlockFlowFlexBoxOrGrid() in order to make it obvious that this method is returning true
for pretty much all blocks other than tables. This makes a lot of call sites look pretty
stupid, since they obviously never intended to include flexible boxes or grids, but at least
it is clear what the method is doing now.

The plan is to land this patch and then start converting call sites from
isBlockFlowFlexBoxOrGrid() to isRenderBlockFlow() one by one, and that way we can figure
out which code is making bad assumptions and change those callers to be isRenderBlock()
instead. Ultimately this isBlockFlowFlexBoxOrGrid() method will go away with callers either
changing to use isRenderBlock() or isRenderBlockFlow().

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* dom/Position.cpp:
(WebCore::Position::isCandidate):
(WebCore::Position::getInlineBoxAndOffset):
(WebCore::Position::primaryDirection):
* dom/PositionIterator.cpp:
(WebCore::PositionIterator::isCandidate):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
* editing/Editor.cpp:
(WebCore::Editor::baseWritingDirectionForSelectionStart):
* editing/FrameSelection.cpp:
(WebCore::caretRenderer):
* editing/TextIterator.cpp:
(WebCore::TextIterator::shouldRepresentNodeOffsetZero):
* editing/TypingCommand.cpp:
(WebCore::TypingCommand::makeEditableRootEmpty):
* editing/htmlediting.cpp:
(WebCore::isBlockFlowElement):
* html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::createRenderer):
* html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::createRenderer):
* html/shadow/SliderThumbElement.cpp:
(WebCore::RenderSliderThumb::RenderSliderThumb):
* html/shadow/SliderThumbElement.h:
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::createAnonymous):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::firstLineBoxBaseline):
(WebCore::RenderBlock::lastLineBoxBaseline):
(WebCore::RenderBlock::firstLineBlock):
(WebCore::findFirstLetterBlock):
(WebCore::shouldCheckLines):
(WebCore::RenderBlock::adjustForBorderFit):
* rendering/RenderBlock.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::positionForPoint):
* rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
(WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::RenderDetailsMarker):
* rendering/RenderDetailsMarker.h:
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::RenderFieldset):
* rendering/RenderFieldset.h:
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::RenderFileUploadControl):
* rendering/RenderFileUploadControl.h:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
* rendering/RenderFlowThread.h:
* rendering/RenderFullScreen.cpp:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::computeRectForRepaint):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::RenderListItem):
(WebCore::RenderListItem::willBeDestroyed):
(WebCore::RenderListItem::willBeRemovedFromTree):
(WebCore::RenderListItem::layout):
(WebCore::RenderListItem::addOverflowFromChildren):
(WebCore::RenderListItem::computePreferredLogicalWidths):
(WebCore::RenderListItem::paint):
* rendering/RenderListItem.h:
* rendering/RenderMeter.cpp:
(WebCore::RenderMeter::RenderMeter):
* rendering/RenderMeter.h:
* rendering/RenderMultiColumnBlock.cpp:
(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
* rendering/RenderMultiColumnBlock.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
(WebCore::RenderObject::computeRectForRepaint):
(WebCore::RenderObject::styleWillChange):
(WebCore::firstLineStyleForCachedUncachedType):
* rendering/RenderObject.h:
(WebCore::RenderObject::isBR):
(WebCore::RenderObject::isRenderBlockFlow):
(WebCore::RenderObject::isBlockFlowFlexBoxOrGrid):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::insertChildNode):
* rendering/RenderProgress.cpp:
(WebCore::RenderProgress::RenderProgress):
* rendering/RenderProgress.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
* rendering/RenderRegion.h:
* rendering/RenderRuby.cpp:
(WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
* rendering/RenderRuby.h:
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::RenderRubyBase):
* rendering/RenderRubyBase.h:
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::RenderRubyRun):
* rendering/RenderRubyRun.h:
* rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::RenderRubyText):
* rendering/RenderRubyText.h:
* rendering/RenderTableCaption.cpp:
(WebCore::RenderTableCaption::RenderTableCaption):
* rendering/RenderTableCaption.h:
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::RenderTableCell):
* rendering/RenderTableCell.h:
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::RenderTextControl):
* rendering/RenderTextControl.h:
* rendering/RenderTextControlSingleLine.h:
(WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
* rendering/RenderTextTrackCue.cpp:
(WebCore::RenderTextTrackCue::RenderTextTrackCue):
* rendering/RenderTextTrackCue.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
* rendering/RenderView.h:
* rendering/RenderingAllInOne.cpp:
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::createGlyph):
* rendering/svg/RenderSVGBlock.cpp:
(WebCore::RenderSVGBlock::RenderSVGBlock):
* rendering/svg/RenderSVGBlock.h:

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

7 years agoGTest: add support for FreeBSD and Hurd
berto@igalia.com [Fri, 6 Sep 2013 20:31:20 +0000 (20:31 +0000)]
GTest: add support for FreeBSD and Hurd
https://bugs.webkit.org/show_bug.cgi?id=120870

Patch by Emilio Pozuelo Monfort <pochu@debian.org>
Reviewed by Gustavo Noronha Silva.

* gtest/include/gtest/internal/gtest-port.h:

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

7 years agoConcurrent FTL causes !hasOptimizedReplacement() asserts in cti_optimize
fpizlo@apple.com [Fri, 6 Sep 2013 20:20:23 +0000 (20:20 +0000)]
Concurrent FTL causes !hasOptimizedReplacement() asserts in cti_optimize
https://bugs.webkit.org/show_bug.cgi?id=120890

Reviewed by Mark Hahnenberg.

Don't install an FTL code block if the DFG code block has already been jettisoned.

* dfg/DFGToFTLDeferredCompilationCallback.cpp:
(JSC::DFG::ToFTLDeferredCompilationCallback::compilationDidComplete):

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

7 years ago Revalidation header blacklisting should be case-insensitive.
ap@apple.com [Fri, 6 Sep 2013 20:04:19 +0000 (20:04 +0000)]
    Revalidation header blacklisting should be case-insensitive.
        https://bugs.webkit.org/show_bug.cgi?id=120832

        Reviewed by Alexey Proskuryakov.

        Adds a new test to verify that a CSS file served initially as type
        'text/css' maintains that type even if a revalidation response sends
        'text/plain' along with a 304 response.

        * http/tests/cache/content-type-ignored-during-revalidation-expected.txt: Added.
        * http/tests/cache/content-type-ignored-during-revalidation.html: Added.
        * http/tests/cache/resources/stylesheet304-bad-content-type.php: Added.

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

7 years agoCalling window.close() should indicate failure with warning message
vivek.vg@samsung.com [Fri, 6 Sep 2013 20:00:49 +0000 (20:00 +0000)]
Calling window.close() should indicate failure with warning message
https://bugs.webkit.org/show_bug.cgi?id=120156

Reviewed by Darin Adler.

Closing of window is allowed for the tests for the automation.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::close):

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

7 years agoActually increment $numFailures
fpizlo@apple.com [Fri, 6 Sep 2013 19:40:32 +0000 (19:40 +0000)]
Actually increment $numFailures

Reviewed by Mark Hahnenberg.

* Scripts/run-jsc-stress-tests:

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

7 years agoFix run-jsc-stress-tests to use Pathname instead of File.realpath.
fpizlo@apple.com [Fri, 6 Sep 2013 19:36:34 +0000 (19:36 +0000)]
Fix run-jsc-stress-tests to use Pathname instead of File.realpath.

Also make it uses system() instead of popen(); that means that test output
will go to the console. This reduces error detection flakiness. It's fine
because stress tests don't print() unless they really have to.

Rubber stamped by Mark Hahnenberg.

* Scripts/run-jsc-stress-tests:

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

7 years ago2013-09-06 Mike West <mkwst@chromium.org>
ap@apple.com [Fri, 6 Sep 2013 19:18:03 +0000 (19:18 +0000)]
2013-09-06  Mike West  <mkwst@chromium.org>

        Revalidation header blacklisting should be case-insensitive.
        https://bugs.webkit.org/show_bug.cgi?id=120832

        Reviewed by Alexey Proskuryakov.

        Headers like 'content-type' should be ignored for 304 responses,
        even if they are delivered as 'Content-Type', or 'CoNtEnT-TyPe', etc.

        I broke this behavior in http://trac.webkit.org/changeset/142068
        ("Entity-header extension headers honored on 304 responses"). Pages like
        https://learndev.unm.edu/ currently break on reload, as they incorrectly
        send 'Content-Type: text/plain' for 304 responses for resources like
        CSS and JavaScript. The browser should drop these headers, but because
        we're comparing in a case-sensitive fashion, we don't.

        https://code.google.com/p/chromium/issues/detail?id=246875 documents the
        Blink-side fix; this patch is a port of that patch.

        Test: http/tests/cache/content-type-ignored-during-revalidation.html

        * loader/cache/CachedResource.cpp:
        (WebCore::shouldUpdateHeaderAfterRevalidation):
        Compare the provided AtomicString 'header' to the revalidation
        blacklists in a case-insensitive fashion.

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

7 years agofast/js/dfg-* tests should wait for the concurrent JIT
fpizlo@apple.com [Fri, 6 Sep 2013 19:14:35 +0000 (19:14 +0000)]
fast/js/dfg-* tests should wait for the concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=120723

Rubber stamped by Oliver Hunt.

Convert more tests.

* fast/js/dfg-check-structure-elimination-for-non-cell-expected.txt:
* fast/js/dfg-check-two-structures-expected.txt:
* fast/js/dfg-compare-final-object-to-final-object-or-other-expected.txt:
* fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt:
* fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt:
* fast/js/dfg-constant-fold-first-local-read-after-block-merge-expected.txt:
* fast/js/dfg-constant-fold-logical-not-branch-expected.txt:
* fast/js/dfg-constant-fold-misprediction-expected.txt:
* fast/js/dfg-constant-fold-uncaptured-variable-that-is-later-captured-expected.txt:
* fast/js/dfg-convert-this-dom-window-expected.txt:
* fast/js/dfg-convert-this-object-then-exit-on-other-expected.txt:
* fast/js/dfg-convert-this-other-then-exit-on-object-expected.txt:
* fast/js/dfg-convert-this-polymorphic-object-then-exit-on-other-expected.txt:
* fast/js/dfg-convert-this-polymorphic-object-then-exit-on-string-expected.txt:
* fast/js/dfg-create-inlined-arguments-in-closure-inline-expected.txt:
* fast/js/dfg-cross-global-object-inline-new-array-literal-expected.txt:
* fast/js/dfg-cross-global-object-inline-new-array-literal-with-variables-expected.txt:
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-check-structure-elimination-for-non-cell.js:
* fast/js/script-tests/dfg-check-two-structures.js:
* fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object.js:
* fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object.js:
* fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other.js:
* fast/js/script-tests/dfg-constant-fold-first-local-read-after-block-merge.js:
* fast/js/script-tests/dfg-constant-fold-logical-not-branch.js:
* fast/js/script-tests/dfg-constant-fold-misprediction.js:
* fast/js/script-tests/dfg-constant-fold-uncaptured-variable-that-is-later-captured.js:
* fast/js/script-tests/dfg-convert-this-dom-window.js:
* fast/js/script-tests/dfg-convert-this-object-then-exit-on-other.js:
* fast/js/script-tests/dfg-convert-this-other-then-exit-on-object.js:
* fast/js/script-tests/dfg-convert-this-polymorphic-object-then-exit-on-other.js:
* fast/js/script-tests/dfg-convert-this-polymorphic-object-then-exit-on-string.js:
* fast/js/script-tests/dfg-create-inlined-arguments-in-closure-inline.js:
* fast/js/script-tests/dfg-cross-global-object-inline-new-array-literal-with-variables.js:
(done):
(doit):
* fast/js/script-tests/dfg-cross-global-object-inline-new-array-literal.js:
(done):
(doit):

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

7 years agoREGRESSION(149636, merged in 153145): ToThis conversion doesn't work in the DFG
fpizlo@apple.com [Fri, 6 Sep 2013 19:01:21 +0000 (19:01 +0000)]
REGRESSION(149636, merged in 153145): ToThis conversion doesn't work in the DFG
https://bugs.webkit.org/show_bug.cgi?id=120781

Reviewed by Mark Hahnenberg.

Roll this back in with a build fix.

- Use some method table hacks to detect if the CheckStructure optimization is
  valid for to_this.

- Introduce a FinalObjectUse and use it for ToThis->Identity conversion.

This looks like it might be perf-neutral on the major benchmarks, but it
introduces some horrible performance cliffs. For example if you add methods to
the Array prototype, you'll get horrible performance cliffs. As in virtual calls
to C++ every time you call a JS function even if it's inlined.
LongSpider/3d-cube appears to hit this.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGRepatch.cpp:
(JSC::DFG::emitPutTransitionStub):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::SafeToExecuteEdge::operator()):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculateFinalObject):
(JSC::DFG::SpeculativeJIT::speculate):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGUseKind.cpp:
(WTF::printInternal):
* dfg/DFGUseKind.h:
(JSC::DFG::typeFilterFor):
(JSC::DFG::isCell):

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

7 years agoIntroduce a way to run benchmarks and JSRegress as stress tests with different jsc...
fpizlo@apple.com [Fri, 6 Sep 2013 18:51:05 +0000 (18:51 +0000)]
Introduce a way to run benchmarks and JSRegress as stress tests with different jsc command-line options
https://bugs.webkit.org/show_bug.cgi?id=120808

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg and rubber stamped by Geoffrey Garen.

Allow --useExperimentalFTL=true even if FTL isn't built since this simplifies
testing.

* dfg/DFGTierUpCheckInjectionPhase.cpp:
(JSC::DFG::TierUpCheckInjectionPhase::run):

Tools:

Reviewed by Mark Hahnenberg and rubber stamped by Geoffrey Garen.

Add a script for running stress tests.  A stress test is a .js file that is run
through different configurations of JSC.  It can control which configurations it
runs by using "//@ <ruby code>" to guide the script.

This script is now run as part of run-javascriptcore-tests, on Mac only.

* Scripts/run-javascriptcore-tests:
* Scripts/run-jsc-stress-tests: Added.

LayoutTests:

Reviewed by Mark Hahnenberg and rubber stamped by Geoffrey Garen.

Make it so that long-running tests aren't run as part of the stress test (they
will still run as part of benchmarks and LayoutTests) or run them with fewer
configurations.

* fast/js/regress/script-tests/ArrayBuffer-DataView-alloc-large-long-lived.js:
* fast/js/regress/script-tests/ArrayBuffer-DataView-alloc-long-lived.js:
* fast/js/regress/script-tests/ArrayBuffer-Int32Array-byteOffset.js:
* fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js:
* fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js:
* fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived.js:
* fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived-buffer.js:
* fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived.js:
* fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc.js:
* fast/js/regress/script-tests/DataView-custom-properties.js:
* fast/js/regress/script-tests/Float32Array-to-Float64Array-set.js:
* fast/js/regress/script-tests/Float64Array-alloc-long-lived.js:
* fast/js/regress/script-tests/Float64Array-to-Int16Array-set.js:
* fast/js/regress/script-tests/HashMap-put-get-iterate-keys.js:
* fast/js/regress/script-tests/HashMap-put-get-iterate.js:
* fast/js/regress/script-tests/HashMap-string-put-get-iterate.js:
* fast/js/regress/script-tests/Int16Array-alloc-long-lived.js:
* fast/js/regress/script-tests/Int16Array-to-Int32Array-set.js:
* fast/js/regress/script-tests/Int32Array-alloc-huge-long-lived.js:
* fast/js/regress/script-tests/Int32Array-alloc-huge.js:
* fast/js/regress/script-tests/Int32Array-alloc-large-long-lived.js:
* fast/js/regress/script-tests/Int32Array-alloc-large.js:
* fast/js/regress/script-tests/Int32Array-alloc-long-lived.js:
* fast/js/regress/script-tests/Int32Array-alloc.js:
* fast/js/regress/script-tests/Int8Array-alloc-long-lived.js:
* fast/js/regress/script-tests/array-nonarray-polymorhpic-access.js:
* fast/js/regress/script-tests/basic-set.js:
* fast/js/regress/script-tests/emscripten-memops.js:
* fast/js/regress/script-tests/inline-arguments-local-escape.js:
* fast/js/regress/script-tests/method-on-number.js:
* fast/js/regress/script-tests/nested-function-parsing-random.js:
* fast/js/regress/script-tests/nested-function-parsing.js:
* fast/js/regress/script-tests/new-array-buffer-push.js:
* fast/js/regress/script-tests/new-array-push.js:
* fast/js/regress/script-tests/poly-stricteq.js:
* fast/js/regress/script-tests/splice-to-remove.js:
* fast/js/regress/script-tests/string-equality.js:
* fast/js/regress/script-tests/string-repeat-arith.js:
* fast/js/regress/script-tests/string-sub.js:

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

7 years ago[MediaStream API] Allow empty MediaStreams
eric.carlson@apple.com [Fri, 6 Sep 2013 18:28:54 +0000 (18:28 +0000)]
[MediaStream API] Allow empty MediaStreams
https://bugs.webkit.org/show_bug.cgi?id=120815

Reviewed by Jer Noble.

The spec is a bit unclear ecactly what should happen with newly created MediaStreams
that doesn't have any tracks. The current implementation is too strict and the spec
is being worked upon to be clearer. In the meantime this patch doesn't set eneded to
true in the constructor.

Source/WebCore:

No new tests, existing test updated.

(WebCore::MediaStreamRegistry::lookupMediaStreamDescriptor):
* platform/mediastream/MediaStreamDescriptor.h:
(WebCore::MediaStreamDescriptor::MediaStreamDescriptor):

LayoutTests:

* fast/mediastream/MediaStreamConstructor-expected.txt:
* fast/mediastream/MediaStreamConstructor.html:

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

7 years agoStop using fastNew/fastDelete in WebCore
andersca@apple.com [Fri, 6 Sep 2013 18:21:35 +0000 (18:21 +0000)]
Stop using fastNew/fastDelete in WebCore
https://bugs.webkit.org/show_bug.cgi?id=120867

Reviewed by Geoffrey Garen.

Using fastNew/fastDelete can be dangerous, especially when put into a smart pointer
such as OwnPtr which uses regular delete. Because of this I'd like to remove fastNew/fastDelete.
Turns out it's only used in a couple of places in WebCore, so just use new/delete here instead.

* platform/audio/FFTFrame.h:
* platform/audio/gstreamer/FFTFrameGStreamer.cpp:
(WebCore::FFTFrame::FFTFrame):
(WebCore::FFTFrame::~FFTFrame):
(WebCore::FFTFrame::doFFT):
(WebCore::FFTFrame::doInverseFFT):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkDispose):

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

7 years ago[GTK] Desktop proxy settings are ignored inside the internal jhbuild
commit-queue@webkit.org [Fri, 6 Sep 2013 18:19:45 +0000 (18:19 +0000)]
[GTK] Desktop proxy settings are ignored inside the internal jhbuild
https://bugs.webkit.org/show_bug.cgi?id=120833

Patch by Mario Sanchez Prada <mario.prada@samsung.com> on 2013-09-06
Reviewed by Gustavo Noronha Silva.

Add dconf as an optional module for the internal jhbuild, along
with vala 0.17 as a dependency, and make sure we do not explicitly
set always the 'memory' backend, so we can have an easy way to
allow apps access desktop settings from the jhbuild. This is
useful for example to be able to run apps such as MiniBrowser
inside the jhbuild (by means of run-launcher, for instance) while
working behind a proxy, since those network settings have to be
read from the system global configuration in org.gnome.system.proxy.

* gtk/jhbuild-optional.modules: Added dconf 0.14 and vala 0.17.
* gtk/jhbuildrc: Do not explicitly choose the GSettings memory
backend here, since that will make more difficult to use the dconf
backend from inside the jhbuild if we need to do it so.

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

7 years ago Lots of pixel tests are failing on first run, so tests cannot finish
ap@apple.com [Fri, 6 Sep 2013 18:11:41 +0000 (18:11 +0000)]
    Lots of pixel tests are failing on first run, so tests cannot finish
        https://bugs.webkit.org/show_bug.cgi?id=120755

        Reviewed by Ryosuke Niwa.

        For whatever reason, many reftests are color profile sensitive, and we only set
        color profile to a known one for pixel tests, not for reftests.

        Pixel testing mode is also enabled  when retrying tests, so these failures used to
        be essentially hidden - the tests were "flaky", but that was not reported loudly enough.
        But now, so many tests fail that it makes run-webkit-tests stop early, and never retry.

        This probably shouldn't happen, as reftests should not be color profile sensitive.
        The fix is a stopgap measure to unblock EWS until a better fix can be investigated.

        * Scripts/webkitpy/layout_tests/controllers/manager.py:
        (Manager._set_up_run): Roll out <http://trac.webkit.org/changeset/115601>.

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

7 years agoFix fastMalloc/delete mismatches in CSS parser
andersca@apple.com [Fri, 6 Sep 2013 17:33:44 +0000 (17:33 +0000)]
Fix fastMalloc/delete mismatches in CSS parser
https://bugs.webkit.org/show_bug.cgi?id=120864

Reviewed by Andreas Kling.

Stop putting fastMalloced memory inside an OwnPtr.

* css/CSSParserValues.cpp:
(WebCore::CSSParserSelector::CSSParserSelector):
(WebCore::CSSParserSelector::adoptSelectorVector):

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

7 years agoFrameLoader::subresourceLoader() should return a reference.
akling@apple.com [Fri, 6 Sep 2013 17:23:03 +0000 (17:23 +0000)]
FrameLoader::subresourceLoader() should return a reference.
<https://webkit.org/b/120830>

Reviewed by Anders Carlsson.

There is always a SubresourceLoader, so this method could never return null.
Also made m_subresourceLoader an OwnPtr to reduce header dependencies.

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

7 years ago[GTK] GlibUtilities: getCurrentExecutablePath() does not compile on GNU/Hurd
berto@igalia.com [Fri, 6 Sep 2013 16:48:44 +0000 (16:48 +0000)]
[GTK] GlibUtilities: getCurrentExecutablePath() does not compile on GNU/Hurd
https://bugs.webkit.org/show_bug.cgi?id=120793

Reviewed by Gustavo Noronha Silva.

Original patch by Svante Signell <svante.signell@telia.com>.

PATH_MAX is not defined in GNU/Hurd, this patch adds a dummy
implementation to make it compile.

* wtf/gobject/GlibUtilities.cpp:
(getCurrentExecutablePath):

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

7 years ago[GTK] AccessibilityUIElement::addNotificationListener() crashes on debug build
commit-queue@webkit.org [Fri, 6 Sep 2013 16:32:30 +0000 (16:32 +0000)]
[GTK] AccessibilityUIElement::addNotificationListener() crashes on debug build
https://bugs.webkit.org/show_bug.cgi?id=120416

Patch by Denis Nomiyama <d.nomiyama@samsung.com> on 2013-09-06
Reviewed by Mario Sanchez Prada.

Tools:

Fixed crashes when running debug DRT. Simplified loops at AccessibilityCallbackAtk.cpp where the HashMap
iterator was removed inside a loop. Fixed AccessibilityUIElement::addNotificationListener() where
m_notificationHandler expected RefPtr.

The global notification handler was stored in the HashMap with key 0. And this caused an assertion when
HashMap::add() or find() are called. To fix it, moved the global handler to a separated pointer.

* DumpRenderTree/atk/AccessibilityCallbacks.h: Removed the global notification key.
* DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:
(axObjectEventListener): Simplified the code by using HashMap::find() and a separate pointer for the
global notification handler.
(addAccessibilityNotificationHandler): Simplified the code by using HashMap::find() and a separate pointer
for the global notification handler.
(removeAccessibilityNotificationHandler): Added the removal for the global notification handler.
* DumpRenderTree/atk/AccessibilityNotificationHandlerAtk.h:
(AccessibilityNotificationHandler::create): Added static function to create
AccessibilityNotificationHandler.
* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::addNotificationListener): Assigned m_notificationHandler with
AccessibilityNotificationHandler::create().

LayoutTests:

Fixed crashes when running debug DRT on tests that require an a11y notification handler.

* platform/gtk/TestExpectations: Unskipped some a11y tests that were crashing before this fix.
Updated the expectation of accessibility/notification-listeners.html to expect failure on Debug build
since it is not crashing anymore. This other issue is tracked in a separate bug (bug 120669).

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

7 years agoAX: aria-relevant does not expose AXARIARelevant
cfleizach@apple.com [Fri, 6 Sep 2013 16:13:52 +0000 (16:13 +0000)]
AX: aria-relevant does not expose AXARIARelevant
https://bugs.webkit.org/show_bug.cgi?id=120373

Reviewed by Darin Adler.

Source/WebCore:

When global ARIA attributes are present on an Element we need to ignore
a presentational role, if set on that Element.

Test: accessibility/global-aria-attributes-invalidate-presentational.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAriaRoleAttribute):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIAAttributes):

LayoutTests:

* accessibility/global-aria-attributes-invalidate-presentational-expected.txt: Added.
* accessibility/global-aria-attributes-invalidate-presentational.html: Added.

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

7 years ago[Qt][BlackBerry] Text track localized string functions are named wrong
commit-queue@webkit.org [Fri, 6 Sep 2013 16:12:33 +0000 (16:12 +0000)]
[Qt][BlackBerry] Text track localized string functions are named wrong
https://bugs.webkit.org/show_bug.cgi?id=120788

Patch by Brendan Long <b.long@cablelabs.com> on 2013-09-06
Reviewed by Philippe Normand.

This renames textTrackOffText() to textTrackOffMenuItemText(), and
adds textTrackAutomaticMenuItemText(), to make them match the
definitions in LocalizedStrings.h.

* platform/blackberry/LocalizedStringsBlackBerry.cpp:
* platform/qt/LocalizedStringsQt.cpp:

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

7 years ago[Win][WebGL] WebGL rendering is slow.
commit-queue@webkit.org [Fri, 6 Sep 2013 16:03:22 +0000 (16:03 +0000)]
[Win][WebGL] WebGL rendering is slow.
https://bugs.webkit.org/show_bug.cgi?id=120841

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-09-06
Reviewed by Brent Fulgham.

Rendering WebGL content is slow on Windows, because lots of debug information is written to debug.txt.

* ANGLE.vcxproj/ANGLERelease.props: Disable logging in release builds.

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

7 years ago[Qt] REGRESSION(r155140) Pixel tests is still broken on Qt with QT_WEBKIT_DISABLE_UIP...
ossy@webkit.org [Fri, 6 Sep 2013 13:33:03 +0000 (13:33 +0000)]
[Qt] REGRESSION(r155140) Pixel tests is still broken on Qt with QT_WEBKIT_DISABLE_UIPROCESS_DUMPPIXELS=1
https://bugs.webkit.org/show_bug.cgi?id=120847

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-09-06
Reviewed by Csaba Osztrogon√°c.

Move the force repaint code back to if (PlatformWebView::windowSnapshotEnabled()) block to support Qt.
Typo fixed: windowShapshotEnabled -> windowSnapshotEnabled.
Add a default PlatformWebView::windowSnapshotEnabled() to the !PLATFORM(QT).

* WebKitTestRunner/PlatformWebView.h:
(WTR::PlatformWebView::windowSnapshotEnabled):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::dumpResults):
* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::WrapperWindow::handleStatusChanged):
(WTR::PlatformWebView::windowSnapshotEnabled):
* WebKitTestRunner/qt/TestInvocationQt.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):

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

7 years agoREGRESSION(r155140) Broke pixel tests on EFL/GTK/Qt
allan.jensen@digia.com [Fri, 6 Sep 2013 12:07:47 +0000 (12:07 +0000)]
REGRESSION(r155140) Broke pixel tests on EFL/GTK/Qt
https://bugs.webkit.org/show_bug.cgi?id=120843

Reviewed by Csaba Osztrogon√°c.

Call notifyDone like the platform specific forceRepaintDoneCallback methods
it replaced did. The method is empty on the Apple ports.

* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::forceRepaintDoneCallback):

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

7 years ago[CSS Regions] Remove orphan test results
commit-queue@webkit.org [Fri, 6 Sep 2013 11:43:20 +0000 (11:43 +0000)]
[CSS Regions] Remove orphan test results
https://bugs.webkit.org/show_bug.cgi?id=120845

Patch by Radu Stavila <stavila@adobe.com> on 2013-09-06
Reviewed by Antti Koivisto.

Removed remaining orphan test results after https://bugs.webkit.org/show_bug.cgi?id=120760.

* platform/efl/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/gtk/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/gtk/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/mac/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/mac/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/qt-wk2/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: Removed.

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

7 years ago[EFL] Unreviewed gardening. Added missing results.
jinwoo7.song@samsung.com [Fri, 6 Sep 2013 11:21:41 +0000 (11:21 +0000)]
[EFL] Unreviewed gardening. Added missing results.

* platform/efl/fast/css-generated-content/details-summary-before-after-expected.txt: Added.
* platform/efl/fast/regions/region-dynamic-after-before-expected.txt: Added.
* platform/efl/fast/regions/region-generated-content-before-after-expected.txt: Added.

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

7 years ago[GTK] Unreviewed gardening. Update TestExpectations.
simon.pena@samsung.com [Fri, 6 Sep 2013 11:04:06 +0000 (11:04 +0000)]
[GTK] Unreviewed gardening. Update TestExpectations.

* platform/gtk-wk2/TestExpectations: Skip speech input tests, mark as failing drag and drop tests.
* platform/gtk-wk2/plugins/npruntime/object-from-destroyed-plugin-expected.txt: Added.
* platform/gtk-wk2/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt: Added.
* platform/gtk/TestExpectations: Updated failing tests.
* platform/gtk/animations/cross-fade-background-image-expected.png: Removed.
* platform/gtk/animations/cross-fade-background-image-expected.txt: Removed.
* platform/gtk/editing/spelling/spellcheck-paste-expected.txt: Rebaseline after r154869.

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

7 years ago[Qt][WK2] Cached credentials not cleared between tests
allan.jensen@digia.com [Fri, 6 Sep 2013 10:11:26 +0000 (10:11 +0000)]
[Qt][WK2] Cached credentials not cleared between tests
https://bugs.webkit.org/show_bug.cgi?id=120775

Reviewed by Jocelyn Turcotte.

Clear the access credentials when resetting the state of a page for testing.

* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):

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

7 years ago[Qt][WK2] Window used by WebKitTestRunner loses active status
allan.jensen@digia.com [Fri, 6 Sep 2013 09:56:13 +0000 (09:56 +0000)]
[Qt][WK2] Window used by WebKitTestRunner loses active status
https://bugs.webkit.org/show_bug.cgi?id=120774

Reviewed by Jocelyn Turcotte.

When focusing the PlatformWebView which is done at the start of each test, we should
ensure the host window of PlatformWebView is also made active, otherwise we will
not receive the keyboard events send by EventSenderProxy.

* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::PlatformWebView::focus):

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

7 years ago[CSS Grid Layout] Resolve named grid lines
svillar@igalia.com [Fri, 6 Sep 2013 08:04:33 +0000 (08:04 +0000)]
[CSS Grid Layout] Resolve named grid lines
https://bugs.webkit.org/show_bug.cgi?id=119632

Reviewed by Andreas Kling.

From Blink r152659, r153794 by <jchaffraix@chromium.org>

Source/WebCore:

Test: fast/css-grid-layout/grid-item-named-grid-line-resolution.html

This change adds the code which translates from a raw named grid
line (stored in RenderStyle) to its actual grid position. This
even includes named grid resolution for grid lines with the 'span'
keyword.

* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::explicitGridSizeForSide):
(WebCore::adjustGridPositionForRowEndColumnEndSide):
(WebCore::adjustGridPositionForSide):
(WebCore::RenderGrid::resolveNamedGridLinePositionFromStyle):
(WebCore::RenderGrid::resolveGridPositionFromStyle):
(WebCore::RenderGrid::resolveGridPositionAgainstOppositePosition):
(WebCore::RenderGrid::resolveNamedGridLinePositionAgainstOppositePosition):
(WebCore::RenderGrid::resolveRowStartColumnStartNamedGridLinePositionAgainstOppositePosition):
(WebCore::RenderGrid::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
* rendering/RenderGrid.h:

LayoutTests:

Added a new test to check named grid lines resolution. This also
provides some more new test cases with named grid lines and
negative positions.

* fast/css-grid-layout/grid-item-named-grid-line-resolution-expected.txt: Added.
* fast/css-grid-layout/grid-item-named-grid-line-resolution.html: Added.
* fast/css-grid-layout/grid-item-negative-position-resolution-expected.txt:
* fast/css-grid-layout/grid-item-negative-position-resolution.html:

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

7 years agoUnreviewed build fix for the GTK port when building with FTL JIT enabled.
zandobersek@gmail.com [Fri, 6 Sep 2013 07:18:01 +0000 (07:18 +0000)]
Unreviewed build fix for the GTK port when building with FTL JIT enabled.

* GNUmakefile.list.am: Add the missing files to the build.

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

7 years agoAllow string as image reference on filter()
krit@webkit.org [Fri, 6 Sep 2013 07:02:40 +0000 (07:02 +0000)]
Allow string as image reference on filter()
https://bugs.webkit.org/show_bug.cgi?id=120829

Reviewed by Andreas Kling.

Source/WebCore:

Beside <image> (which already includes url(), gradients, cross-fade() and
image-set()), the filter() image function should support <string> as image
reference.

http://dev.w3.org/fxtf/filters/#FilterCSSImageValue

* css/CSSParser.cpp:
(WebCore::CSSParser::parseFilterImage): Create CSSImageValue from string.

LayoutTests:

Check that string can be used as image reference, that we
interpolate between the same images once referenced by string
and once by url() and that other tokens are not excepted.

* fast/filter-image/filter-image-animation-expected.txt:
* fast/filter-image/filter-image-animation.html:
* fast/filter-image/parse-filter-image-expected.txt:
* fast/filter-image/parse-filter-image.html:

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

7 years agoSupport SVG filters on -webkit-filter() function
krit@webkit.org [Fri, 6 Sep 2013 06:00:49 +0000 (06:00 +0000)]
Support SVG filters on -webkit-filter() function
https://bugs.webkit.org/show_bug.cgi?id=120806

Reviewed by Darin Adler.

Source/WebCore:

Add support for SVG Filters on CSS -webkit-filter() image function.

Test: fast/filter-image/filter-image-svg.html

* css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::image): Pass renderer to filter builder.

LayoutTests:

Test that the -webkit-filter() function can reference a SVG Filter
from the document.

* fast/filter-image/filter-image-svg-expected.html: Added.
* fast/filter-image/filter-image-svg.html: Added.

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

7 years agoMake it simpler to introduce new data types to the global object
oliver@apple.com [Fri, 6 Sep 2013 05:50:33 +0000 (05:50 +0000)]
Make it simpler to introduce new data types to the global object
https://bugs.webkit.org/show_bug.cgi?id=120801

Reviewed by Gavin Barraclough.

Add an iterator macro that lists all the "simple" ES types (e.g. type
consists of instance, constructor, and prototype classes).  So that
we don't need to have every new type litter JSGlobalObject.{cpp,h} with
members, accessors, and manual GC visiting.

* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::visitChildren):
* runtime/JSGlobalObject.h:

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

7 years agoDRY out srcset related deviceScaleFactor calculations
commit-queue@webkit.org [Fri, 6 Sep 2013 05:48:40 +0000 (05:48 +0000)]
DRY out srcset related deviceScaleFactor calculations
https://bugs.webkit.org/show_bug.cgi?id=120791

Identical deviceScaleFactor calculations were performed in 3 different locations.
I've added that calculation as a method of Document.
Previous calculations are replaced by calls to this method.

Patch by Yoav Weiss <yoav@yoav.ws> on 2013-09-05
Reviewed by Andreas Kling.

No new tests since this is a refactoring change. No functionality have changed.

* dom/Document.cpp:
(WebCore::Document::deviceScaleFactor):
* dom/Document.h:
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::parseAttribute):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizer):
(WebCore::HTMLDocumentParser::insert):

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

7 years ago[Qt] DefaultFullScreenVideoHandler and PlatformVideoWindow are included in the build...
commit-queue@webkit.org [Fri, 6 Sep 2013 05:47:21 +0000 (05:47 +0000)]
[Qt] DefaultFullScreenVideoHandler and PlatformVideoWindow are included in the build when they are disabled
https://bugs.webkit.org/show_bug.cgi?id=117206

Patch by Brendan Long <b.long@cablelabs.com> on 2013-09-05
Reviewed by Philippe Normand.

.:

* Source/widgetsapi.pri: Don't include DefaultFullScreenVideoHandler when it's disabled.

Source/WebCore:

No new tests because this just fixes a build warning.

* Target.pri: Don't include PlatformVideoWindow* files in the build when they are disabled.

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

7 years agoFrameView: Constructor should take Frame&.
akling@apple.com [Fri, 6 Sep 2013 04:49:52 +0000 (04:49 +0000)]
FrameView: Constructor should take Frame&.
<https://webkit.org/b/120824>

Reviewed by Anders Carlsson.

* WebCore.exp.in:
* inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::overlayPage):
* page/Frame.cpp:
(WebCore::Frame::createView):
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::create):
* page/FrameView.h:
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::dataChanged):

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

7 years ago[EFL] Unreviewed gardening.
jinwoo7.song@samsung.com [Fri, 6 Sep 2013 03:57:14 +0000 (03:57 +0000)]
[EFL] Unreviewed gardening.

* platform/efl-wk1/TestExpectations: Failing after r155014.

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

7 years agoINSTALL_PATH_PREFIX is used even when not installing
mitz@apple.com [Fri, 6 Sep 2013 03:50:53 +0000 (03:50 +0000)]
INSTALL_PATH_PREFIX is used even when not installing
https://bugs.webkit.org/show_bug.cgi?id=120818

Reviewed by Darin Adler.

* Configurations/ANGLE.xcconfig: Changed the definition of PRIVATE_HEADERS_FOLDER_PATH
to include INSTALL_PATH_PREFIX only when installing.

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

7 years agoINSTALL_PATH_PREFIX is used even when not installing
mitz@apple.com [Fri, 6 Sep 2013 03:50:08 +0000 (03:50 +0000)]
INSTALL_PATH_PREFIX is used even when not installing
https://bugs.webkit.org/show_bug.cgi?id=120810

Reviewed by Andy Estes.

* Configurations/CopyWTFHeaders.xcconfig: Removed INSTALL_PATH_PREFIX from
the definition of PRIVATE_HEADERS_FOLDER_PATH. Also removed the leading
slash, because the Xcode definition of this build setting is relative.
* WTF.xcodeproj/project.pbxproj: Prepend INSTALL_PATH_PREFIX here when installing.

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

7 years agoFix build warnings by unused parameter
jinwoo7.song@samsung.com [Fri, 6 Sep 2013 03:43:14 +0000 (03:43 +0000)]
Fix build warnings by unused parameter
https://bugs.webkit.org/show_bug.cgi?id=120821

Reviewed by Anders Carlsson.

Fix warning by removing unused parameter.

* platform/graphics/gstreamer/TextSinkGStreamer.cpp:
(webkitTextSinkGetProperty):
(webkitTextSinkSetProperty):
* platform/network/soup/SynchronousLoaderClientSoup.cpp:
(WebCore::SynchronousLoaderClient::didReceiveAuthenticationChallenge):

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

7 years agoWeb Inspector: Breakpoint Action JS Editor has line wrapping issues with long no...
commit-queue@webkit.org [Fri, 6 Sep 2013 03:33:57 +0000 (03:33 +0000)]
Web Inspector: Breakpoint Action JS Editor has line wrapping issues with long no-space lines
https://bugs.webkit.org/show_bug.cgi?id=120822

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-09-05
Reviewed by Timothy Hatcher.

* UserInterface/BreakpointActionView.css:
(.breakpoint-action-eval-editor > .CodeMirror):
(.breakpoint-action-eval-editor > .CodeMirror-scroll):

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

7 years agoFrameLoader: Convert three little loops to using Vector<Ref<Frame>>.
akling@apple.com [Fri, 6 Sep 2013 01:34:05 +0000 (01:34 +0000)]
FrameLoader: Convert three little loops to using Vector<Ref<Frame>>.
<https://webkit.org/b/120798>

Reviewed by Antti Koivisto.

Also apply a bit of inline capacity + reserveInitialCapacity + uncheckedAppend
in FrameLoader::detachChildren() since we know the final size from the start.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::detachChildren):
(WebCore::FrameLoader::checkLoadComplete):
(WebCore::FrameLoader::shouldClose):

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

7 years agoContainerNode: Apply Ref<T> to some popular DOM functions.
akling@apple.com [Fri, 6 Sep 2013 01:24:45 +0000 (01:24 +0000)]
ContainerNode: Apply Ref<T> to some popular DOM functions.
<https://webkit.org/b/120800>

Reviewed by Antti Koivisto.

Use Ref to avoid a bunch of null checks in some popular DOM functions.

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::insertBefore):

    'refChild' is never null here, so store it in a Ref.

(WebCore::ContainerNode::replaceChild):

    'removedChild' is never null here, so store it in a Ref.

(WebCore::ContainerNode::removeChild):

    'child' is never null here, so store it in a Ref.
    Also return "true" at the end of the function since we can't
    null-check 'child' anymore (not that it would ever be false!)

(WebCore::dispatchChildInsertionEvents):
(WebCore::dispatchChildRemovalEvents):

    Use Ref<Document> in both of these methods.

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

7 years agoRoll out r155149 since it broke the build.
mrowe@apple.com [Fri, 6 Sep 2013 01:08:48 +0000 (01:08 +0000)]
Roll out r155149 since it broke the build.

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

7 years agoWeb Inspector: Edit Breakpoint popover sometimes appears misplaced in top left
commit-queue@webkit.org [Fri, 6 Sep 2013 00:55:42 +0000 (00:55 +0000)]
Web Inspector: Edit Breakpoint popover sometimes appears misplaced in top left
https://bugs.webkit.org/show_bug.cgi?id=120804

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-09-05
Reviewed by Timothy Hatcher.

Grab the bounding rect immediately, instead of grabbing it from the element
after the user has selected the "Edit Breakpoint" context menu item. When
the popover was misplaced it was when using an element had been removed or
replaced in the DOM, and caused a bogus bounding client rect.

* UserInterface/Breakpoint.js:
(WebInspector.Breakpoint.prototype.editBreakpoint):
(WebInspector.Breakpoint.prototype._showEditBreakpointPopover):

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

7 years agoScrollView::children() should return a reference.
akling@apple.com [Fri, 6 Sep 2013 00:35:00 +0000 (00:35 +0000)]
ScrollView::children() should return a reference.
<https://webkit.org/b/120795>

Reviewed by Anders Carlsson.

Source/WebCore:

This function was already just returning the address of a member variable.
Modernized some loops that were using it.

* bindings/js/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::setJavaScriptPaused):
* page/FrameView.cpp:
(WebCore::FrameView::hasCustomScrollbars):
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
* page/Page.cpp:
(WebCore::Page::pluginViews):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):
* platform/ScrollView.h:
(WebCore::ScrollView::children):
* plugins/IFrameShimSupport.cpp:
(WebCore::getPluginOcclusions):

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):

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

7 years ago[CMAKE] Add c++0x into CXX_FLAGS as a default
ryuan.choi@samsung.com [Fri, 6 Sep 2013 00:23:22 +0000 (00:23 +0000)]
[CMAKE] Add c++0x into CXX_FLAGS as a default
https://bugs.webkit.org/show_bug.cgi?id=120812

Unreviewed build fix for EFL ports.

.:

* Source/cmake/OptionsCommon.cmake: Moved c++0x option here from WebKitHelpers.
* Source/cmake/WebKitHelpers.cmake:

Source/WebKit/efl:

* tests/UnitTestUtils/EWKTestConfig.h: Add space between strings.

Source/WebKit2:

* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h: Added constexpr for in-class initialization.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp: Added space between strings.
(EWK2UnitTest::EWK2UnitTestEnvironment::defaultTestPageUrl):
(EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
(EWK2UnitTest::EWK2UnitTestEnvironment::urlForResource):

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

7 years agoReverting revisions 155139, 155141, 155142, and 155145 since they appear to have
bdakin@apple.com [Fri, 6 Sep 2013 00:18:56 +0000 (00:18 +0000)]
Reverting revisions 155139, 155141, 155142, and 155145 since they appear to have
caused about 50 new test failures.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* dom/Position.cpp:
(WebCore::Position::isCandidate):
(WebCore::Position::getInlineBoxAndOffset):
(WebCore::Position::primaryDirection):
* dom/PositionIterator.cpp:
(WebCore::PositionIterator::isCandidate):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
* editing/Editor.cpp:
(WebCore::Editor::baseWritingDirectionForSelectionStart):
* editing/FrameSelection.cpp:
(WebCore::caretRenderer):
* editing/TextIterator.cpp:
(WebCore::TextIterator::shouldRepresentNodeOffsetZero):
* editing/TypingCommand.cpp:
(WebCore::TypingCommand::makeEditableRootEmpty):
* editing/htmlediting.cpp:
(WebCore::isBlockFlowElement):
* html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::createRenderer):
* html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::createRenderer):
* html/shadow/SliderThumbElement.cpp:
(WebCore::RenderSliderThumb::RenderSliderThumb):
* html/shadow/SliderThumbElement.h:
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::createAnonymous):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::firstLineBoxBaseline):
(WebCore::RenderBlock::lastLineBoxBaseline):
(WebCore::RenderBlock::firstLineBlock):
(WebCore::findFirstLetterBlock):
(WebCore::shouldCheckLines):
(WebCore::RenderBlock::adjustForBorderFit):
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp: Removed.
* rendering/RenderBlockFlow.h: Removed.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::positionForPoint):
* rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
(WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::RenderDetailsMarker):
* rendering/RenderDetailsMarker.h:
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::RenderFieldset):
* rendering/RenderFieldset.h:
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::RenderFileUploadControl):
* rendering/RenderFileUploadControl.h:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
* rendering/RenderFlowThread.h:
* rendering/RenderFullScreen.cpp:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::computeRectForRepaint):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::RenderListItem):
(WebCore::RenderListItem::willBeDestroyed):
(WebCore::RenderListItem::willBeRemovedFromTree):
(WebCore::RenderListItem::layout):
(WebCore::RenderListItem::addOverflowFromChildren):
(WebCore::RenderListItem::computePreferredLogicalWidths):
(WebCore::RenderListItem::paint):
* rendering/RenderListItem.h:
* rendering/RenderMeter.cpp:
(WebCore::RenderMeter::RenderMeter):
* rendering/RenderMeter.h:
* rendering/RenderMultiColumnBlock.cpp:
(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
* rendering/RenderMultiColumnBlock.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
(WebCore::RenderObject::computeRectForRepaint):
(WebCore::RenderObject::styleWillChange):
(WebCore::firstLineStyleForCachedUncachedType):
* rendering/RenderObject.h:
(WebCore::RenderObject::isBlockFlow):
(WebCore::RenderObject::isRenderBlock):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::insertChildNode):
* rendering/RenderProgress.cpp:
(WebCore::RenderProgress::RenderProgress):
* rendering/RenderProgress.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
* rendering/RenderRegion.h:
* rendering/RenderRuby.cpp:
(WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
* rendering/RenderRuby.h:
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::RenderRubyBase):
* rendering/RenderRubyBase.h:
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::RenderRubyRun):
* rendering/RenderRubyRun.h:
* rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::RenderRubyText):
* rendering/RenderRubyText.h:
* rendering/RenderTableCaption.cpp:
(WebCore::RenderTableCaption::RenderTableCaption):
* rendering/RenderTableCaption.h:
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::RenderTableCell):
* rendering/RenderTableCell.h:
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::RenderTextControl):
* rendering/RenderTextControl.h:
* rendering/RenderTextControlSingleLine.h:
(WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
* rendering/RenderTextTrackCue.cpp:
(WebCore::RenderTextTrackCue::RenderTextTrackCue):
* rendering/RenderTextTrackCue.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
* rendering/RenderView.h:
* rendering/RenderingAllInOne.cpp:
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::createGlyph):
* rendering/svg/RenderSVGBlock.cpp:
(WebCore::RenderSVGBlock::RenderSVGBlock):
* rendering/svg/RenderSVGBlock.h:

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

7 years agoFlaky Test: platform/mac/editing/deleting/deletionUI-single-instance.html
ap@apple.com [Fri, 6 Sep 2013 00:16:28 +0000 (00:16 +0000)]
Flaky Test: platform/mac/editing/deleting/deletionUI-single-instance.html
https://bugs.webkit.org/show_bug.cgi?id=114181

Reviewed by Ryosuke Niwa.

Editor survives navigations, and so did DeleteButtonController. But the state it holds
is document specific (like nodes in the old document).

* editing/Editor.cpp: (WebCore::Editor::clear): Replace DeleteButtonController.

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

7 years agoUnreviewed build fix. VectorReverse.cpp was removed after r155151.
seokju@webkit.org [Thu, 5 Sep 2013 23:30:32 +0000 (23:30 +0000)]
Unreviewed build fix. VectorReverse.cpp was removed after r155151.

* TestWebKitAPI/CMakeLists.txt:

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

7 years agoCleanup formatting of byte code debug output
msaboff@apple.com [Thu, 5 Sep 2013 23:27:41 +0000 (23:27 +0000)]
Cleanup formatting of byte code debug output
Source/JavaScriptCore/ChangeLog

Rubber stamped by Filip Pizlo.

Put the formatting of the byte code offset and operation into one common function to
simplify and unify formatting.  Changed CodeBlock::registerName() to return
"thist" for argument register 0, "argN" for other argument registers and "locN" for
local registers.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::registerName):
(JSC::CodeBlock::printUnaryOp):
(JSC::CodeBlock::printBinaryOp):
(JSC::CodeBlock::printConditionalJump):
(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::printPutByIdOp):
(JSC::CodeBlock::dumpBytecode):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::printLocationAndOp):
(JSC::CodeBlock::printLocationOpAndRegisterOperand):

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

7 years agoFix build with older versions of clang from Xcode.
andersca@apple.com [Thu, 5 Sep 2013 23:13:42 +0000 (23:13 +0000)]
Fix build with older versions of clang from Xcode.

* wtf/Compiler.h:

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

7 years agoGenerate toFooElement() functions from tagname data.
gyuyoung.kim@samsung.com [Thu, 5 Sep 2013 22:57:40 +0000 (22:57 +0000)]
Generate toFooElement() functions from tagname data.
https://bugs.webkit.org/show_bug.cgi?id=120676

Reviewed by Andreas Kling.

As r154965 introduced the isFooElement() generation, this patch adds generations of toFooElement() function
to *generateTypeChecking* attribute. To represent isFooElement() and toFooElement(), *generateTypeChecking*
is changed to *generateTypeHelpers*.

Removed all the hand-written toFooElement() that can be covered by the *generateTypeHelpers*.

* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/make_names.pl:
(defaultTagPropertyHash):
(printTypeHelpers):
(printTypeHelpersHeaderFile):
* html/HTMLAnchorElement.h:
* html/HTMLAreaElement.h:
* html/HTMLAudioElement.h:
* html/HTMLCanvasElement.h:
* html/HTMLElement.h:
* html/HTMLFormElement.h:
* html/HTMLFrameSetElement.h:
* html/HTMLImageElement.h:
* html/HTMLInputElement.h:
* html/HTMLLabelElement.h:
* html/HTMLMapElement.h:
* html/HTMLMeterElement.h:
* html/HTMLOptGroupElement.h:
* html/HTMLOptionElement.h:
* html/HTMLProgressElement.h:
* html/HTMLScriptElement.h:
* html/HTMLStyleElement.h:
* html/HTMLTableElement.h:
* html/HTMLTableRowElement.h:
* html/HTMLTagNames.in:
* html/HTMLTextAreaElement.h:
* html/HTMLTitleElement.h:
* svg/SVGElement.h:
* svg/SVGFontElement.h:
* svg/SVGFontFaceElement.h:
* svg/SVGImageElement.h:
* svg/SVGScriptElement.h:
* svg/svgtags.in:

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

7 years agoWeb Inspector: Remove harmless assert, triggered hitting breakpoint in auto prettypri...
commit-queue@webkit.org [Thu, 5 Sep 2013 22:11:29 +0000 (22:11 +0000)]
Web Inspector: Remove harmless assert, triggered hitting breakpoint in auto prettyprinted code on reload
https://bugs.webkit.org/show_bug.cgi?id=120332

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-09-05
Reviewed by Timothy Hatcher.

* UserInterface/TextEditor.js:

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

7 years ago WKFullScreenWindowController extends lifetime of WKView, deleting it at a...
ap@apple.com [Thu, 5 Sep 2013 22:06:31 +0000 (22:06 +0000)]
    WKFullScreenWindowController extends lifetime of WKView, deleting it at a wrong time
        https://bugs.webkit.org/show_bug.cgi?id=120792
        <rdar://problem/14884666>

        Reviewed by Jer Noble.

        * UIProcess/API/mac/WKView.mm: (-[WKView fullScreenWindowController]):
        Use a newly minted initializer for the controller.

        * UIProcess/mac/WKFullScreenWindowController.h: Removed unused web view accessors.
        Changed the class to take web view at initialization time.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController initWithWindow:webView:]): Initialize the controller
        inone step.
        (-[WKFullScreenWindowController dealloc]): WebView is now a raw pointer, no need
        to zero it.
        (-[WKFullScreenWindowController close]): Make sure to not leave a dangling WKView
        pointer (this method is indirectly but inevitably called when WKView is deallocated).

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

7 years agoMake Vector::uncheckedAppend work with move-only types
andersca@apple.com [Thu, 5 Sep 2013 21:52:25 +0000 (21:52 +0000)]
Make Vector::uncheckedAppend work with move-only types
https://bugs.webkit.org/show_bug.cgi?id=120799

Reviewed by Andreas Kling.

Source/WTF:

* wtf/Vector.h:
(WTF::::uncheckedAppend):
Use std::forward to invoke the move constructor when possible.

Tools:

* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::MoveOnly):
Add a move-only class.

(TestWebKitAPI::TEST):
Add a test for Vector<MoveOnly>::uncheckedAppend.

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

7 years agoMove all Vector tests into Vector.cpp
andersca@apple.com [Thu, 5 Sep 2013 21:34:17 +0000 (21:34 +0000)]
Move all Vector tests into Vector.cpp
https://bugs.webkit.org/show_bug.cgi?id=120797

Reviewed by Andreas Kling.

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/GNUmakefile.am:
* TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
* TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj.filters:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/VectorBasic.cpp: Removed.
* TestWebKitAPI/Tests/WTF/VectorReverse.cpp: Removed.
* TestWebKitAPI/Tests/WTF/WTF.pro:

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

7 years agoCached Page and Frame don't need to be ref-counted.
akling@apple.com [Thu, 5 Sep 2013 21:25:32 +0000 (21:25 +0000)]
Cached Page and Frame don't need to be ref-counted.
<https://webkit.org/b/120710>

Reviewed by Anders Carlsson.

- CachedPage is owned by HistoryItem.
- CachedFrame is owned by CachedPage.

Remove the ref counting from these objects to make the code less confusing.

Added a new method:

- PassOwnPtr<CachedPage> PageCache::take(HistoryItem*)

..which is what it looks like - a combined get() and remove() that transfers
ownership of the CachedPage to the caller.

This is used by commitProvisionalLoad() and invalidateCurrentItemCachedPage()
to accomplish in one swoop what they used to do in awkwardly spaced steps.

* history/CachedFrame.h:
(WebCore::CachedFrame::create):
* history/CachedPage.cpp:
(WebCore::CachedPage::create):
* history/CachedPage.h:
* history/HistoryItem.h:
* history/PageCache.cpp:
(WebCore::PageCache::take):
* history/PageCache.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::transitionToCommitted):
* loader/FrameLoader.h:
* loader/HistoryController.cpp:
(WebCore::HistoryController::invalidateCurrentItemCachedPage):

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

7 years agoREGRESSION(149636, merged in 153145): ToThis conversion doesn't work in the DFG
fpizlo@apple.com [Thu, 5 Sep 2013 21:19:09 +0000 (21:19 +0000)]
REGRESSION(149636, merged in 153145): ToThis conversion doesn't work in the DFG
https://bugs.webkit.org/show_bug.cgi?id=120781

Reviewed by Mark Hahnenberg.

- Use some method table hacks to detect if the CheckStructure optimization is
  valid for to_this.

- Introduce a FinalObjectUse and use it for ToThis->Identity conversion.

This looks like it might be perf-neutral on the major benchmarks, but it
introduces some horrible performance cliffs. For example if you add methods to
the Array prototype, you'll get horrible performance cliffs. As in virtual calls
to C++ every time you call a JS function even if it's inlined.
LongSpider/3d-cube appears to hit this.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::SafeToExecuteEdge::operator()):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculateFinalObject):
(JSC::DFG::SpeculativeJIT::speculate):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGUseKind.cpp:
(WTF::printInternal):
* dfg/DFGUseKind.h:
(JSC::DFG::typeFilterFor):
(JSC::DFG::isCell):

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

7 years agoAdd COMPILER_SUPPORTS(CXX_AUTO_TYPE) and #error if it's 0
andersca@apple.com [Thu, 5 Sep 2013 21:17:35 +0000 (21:17 +0000)]
Add COMPILER_SUPPORTS(CXX_AUTO_TYPE) and #error if it's 0
https://bugs.webkit.org/show_bug.cgi?id=120794

Reviewed by Andreas Kling.

People have already begun using C++11 auto in WebCore, so let's make it a prerequisite.

* wtf/Compiler.h:

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

7 years agoBUILD FIX (r155108): Add SynchronousLoaderClientCFNet.cpp to Xcode project
ddkilzer@apple.com [Thu, 5 Sep 2013 21:07:41 +0000 (21:07 +0000)]
BUILD FIX (r155108): Add SynchronousLoaderClientCFNet.cpp to Xcode project

* WebCore.xcodeproj/project.pbxproj: The iOS port defines
USE(CFNETWORK), so it needs to compile
SynchronousLoaderClientCFNet.cpp to build successfully.

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

7 years agoClean up wtf/Compiler.h
andersca@apple.com [Thu, 5 Sep 2013 21:01:30 +0000 (21:01 +0000)]
Clean up wtf/Compiler.h
https://bugs.webkit.org/show_bug.cgi?id=120790

Reviewed by Andreas Kling.

- Get rid of the CLANG_PRAGMA define, it's not used anywhere.
- Remove a workaround for a bug in the version of clang that came with Xcode 4.2.
- Replace WTF_COMPILER_SUPPORTS_CXX_FINAL_CONTROL with a compiler quirk for versions of clang
  that have a buggy final implementation and fix a bug in the macro where final would be disabled
  for versions of clang where __clang_minor__ is less than 2, regardless of the major version.
- Fail if someone tries to compile the WebKit stack with a compiler that doesn't support rvalue
  references or static_assert.

* wtf/Compiler.h:

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

7 years agoFix build bustage.
hyatt@apple.com [Thu, 5 Sep 2013 20:54:49 +0000 (20:54 +0000)]
Fix build bustage.

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

7 years agoReplace uses of CLANG_PRAGMA with #pragma
andersca@apple.com [Thu, 5 Sep 2013 20:17:48 +0000 (20:17 +0000)]
Replace uses of CLANG_PRAGMA with #pragma

Rubber-stamped by Andreas Kling.

This file is only compiled by clang anyway.

* WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::load):

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

7 years agoGCAssertions.h should use STL type traits and static_assert
andersca@apple.com [Thu, 5 Sep 2013 20:12:23 +0000 (20:12 +0000)]
GCAssertions.h should use STL type traits and static_assert
https://bugs.webkit.org/show_bug.cgi?id=120785

Reviewed by Andreas Kling.

Source/JavaScriptCore:

There's no need to rely on compiler specific support to figure out if a class is trivially destructable,
we can just use type traits from STL. Do this, fix the assert macro to use static_assert directly and
rename it from ASSERT_HAS_TRIVIAL_DESTRUCTOR to STATIC_ASSERT_IS_TRIVIALLY_DESTRUCTIBLE to clarify that
it's a static assert and to match the STL nomenclature.

* API/JSCallbackFunction.cpp:
* debugger/DebuggerActivation.cpp:
* heap/GCAssertions.h:
* runtime/ArrayConstructor.cpp:
* runtime/BooleanConstructor.cpp:
* runtime/BooleanObject.cpp:
* runtime/BooleanPrototype.cpp:
* runtime/DateConstructor.cpp:
* runtime/ErrorConstructor.cpp:
* runtime/ErrorInstance.cpp:
* runtime/ErrorPrototype.cpp:
* runtime/ExceptionHelpers.cpp:
* runtime/FunctionConstructor.cpp:
* runtime/FunctionPrototype.cpp:
* runtime/GetterSetter.cpp:
* runtime/InternalFunction.cpp:
* runtime/JSAPIValueWrapper.cpp:
* runtime/JSArray.cpp:
* runtime/JSCell.cpp:
* runtime/JSNotAnObject.cpp:
* runtime/JSONObject.cpp:
* runtime/JSObject.cpp:
* runtime/JSPromiseConstructor.cpp:
* runtime/JSPromisePrototype.cpp:
* runtime/JSPromiseResolverConstructor.cpp:
* runtime/JSPromiseResolverPrototype.cpp:
* runtime/JSProxy.cpp:
* runtime/JSScope.cpp:
* runtime/JSWrapperObject.cpp:
* runtime/MathObject.cpp:
* runtime/NameConstructor.cpp:
* runtime/NativeErrorConstructor.cpp:
* runtime/NumberConstructor.cpp:
* runtime/NumberObject.cpp:
* runtime/NumberPrototype.cpp:
* runtime/ObjectConstructor.cpp:
* runtime/ObjectPrototype.cpp:
* runtime/RegExpObject.cpp:
* runtime/StrictEvalActivation.cpp:
* runtime/StringConstructor.cpp:
* runtime/StringObject.cpp:
* runtime/StringPrototype.cpp:

Source/WebCore:

Update for JavaScriptCore changes.

* bindings/js/JSDOMBinding.cpp:
* bindings/js/JSImageConstructor.cpp:

Source/WebKit2:

Update for JavaScriptCore changes.

* WebProcess/Plugins/Netscape/JSNPMethod.cpp:

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

7 years agoMake RenderListItem inherit from RenderBlockFlow.
hyatt@apple.com [Thu, 5 Sep 2013 19:57:08 +0000 (19:57 +0000)]
Make RenderListItem inherit from RenderBlockFlow.
https://bugs.webkit.org/show_bug.cgi?id=120789

Reviewed by Beth Dakin.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::RenderListItem):
(WebCore::RenderListItem::willBeDestroyed):
(WebCore::RenderListItem::willBeRemovedFromTree):
(WebCore::RenderListItem::layout):
(WebCore::RenderListItem::addOverflowFromChildren):
(WebCore::RenderListItem::computePreferredLogicalWidths):
(WebCore::RenderListItem::paint):
* rendering/RenderListItem.h:

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

7 years agoMake RenderBlock have a protected constructor..
hyatt@apple.com [Thu, 5 Sep 2013 19:47:40 +0000 (19:47 +0000)]
Make RenderBlock have a protected constructor..
https://bugs.webkit.org/show_bug.cgi?id=120787

Reviewed by Beth Dakin.

Make sure nobody can create a RenderBlock directly. Make sure RenderBlockFlows
get made when a display:block/inline-block/compact/run-in is seen.

* html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::createRenderer):
* html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::createRenderer):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::createAnonymous):
* rendering/RenderBlock.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):

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

7 years agoExpected result images are sometimes blank in WKTR
simon.fraser@apple.com [Thu, 5 Sep 2013 19:38:48 +0000 (19:38 +0000)]
Expected result images are sometimes blank in WKTR
https://bugs.webkit.org/show_bug.cgi?id=120715

Reviewed by Tim Horton.

In WebKitTestRunner, snapshots obtained via windowSnapshotImage() were
sometimes blank if a previous test triggered compositing mode, and the
current test or reference did not require compositing. This happened
because the UI process didn't wait for the web process to complete
its compositing mode switch before snapshotting. Fix by calling
WKPageForceRepaint() before we take the snapshot; this is async,
so we have to spin the runloop for a while.

Remove the Qt/EFL code that does the same thing.

* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::forceRepaintDoneCallback):
(WTR::TestInvocation::dumpResults):
* WebKitTestRunner/TestInvocation.h:
* WebKitTestRunner/cairo/TestInvocationCairo.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
* WebKitTestRunner/qt/TestInvocationQt.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):

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