Timeline



Jul 21, 2013:

9:04 PM Changeset in webkit [152959] by fpizlo@apple.com
  • 5 edits
    6 adds in branches/dfgFourthTier/Source

fourthTier: DFG Nodes should be able to abstractly tell you what they read and what they write
https://bugs.webkit.org/show_bug.cgi?id=118910

Source/JavaScriptCore:

Reviewed by Sam Weinig.

Add the notion of AbstractHeap to the DFG. This is analogous to the AbstractHeap in
the FTL, except that the FTL's AbstractHeaps are used during LLVM lowering and are
engineered to obey LLVM TBAA logic. The FTL's AbstractHeaps are also engineered to
be inexpensive to use (they just give you a TBAA node) but expensive to create (you
create them all up front). FTL AbstractHeaps also don't actually give you the
ability to reason about aliasing; they are *just* a mechanism for lowering to TBAA.
The DFG's AbstractHeaps are engineered to be both cheap to create and cheap to use.
They also give you aliasing machinery. The DFG AbstractHeaps are represented
internally by a int64_t. Many comparisons between them are just integer comaprisons.
AbstractHeaps form a three-level hierarchy (World is the supertype of everything,
Kind with a TOP payload is a direct subtype of World, and Kind with a non-TOP
payload is the direct subtype of its corresponding TOP Kind).

Add the notion of a ClobberSet. This is the set of AbstractHeaps that you had
clobbered. It represents the set that results from unifying a bunch of
AbstractHeaps, and is intended to quickly answer overlap questions: does the given
AbstractHeap overlap any AbstractHeap in the ClobberSet? To this end, if you add an
AbstractHeap to a set, it "directly" adds the heap itself, and "super" adds all of
its ancestors. An AbstractHeap is said to overlap a set if any direct or super
member is equal to it, or if any of its ancestors are equal to a direct member.

Example #1:

  • I add Variables(5). I.e. Variables is the Kind and 5 is the payload. This is a subtype of Variables, which is a subtype of World.
  • You query Variables. I.e. Variables with a TOP payload, which is the supertype of Variables(X) for any X, and a subtype of World.


The set will have Variables(5) as a direct member, and Variables and World as
super members. The Variables query will immediately return true, because
Variables is indeed a super member.


Example #2:

  • I add Variables(5)
  • You query NamedProperties


NamedProperties is not a member at all (neither direct or super). We next
query World. World is a member, but it's a super member, so we return false.


Example #3:

  • I add Variables
  • You query Variables(5)


The set will have Variables as a direct member, and World as a super member.
The Variables(5) query will not find Variables(5) in the set, but then it
will query Variables. Variables is a direct member, so we return true.


Example #4:

  • I add Variables
  • You query NamedProperties(5)


Neither NamedProperties nor NamedProperties(5) are members. We next query
World. World is a member, but it's a super member, so we return false.


Overlap queries require that either the heap being queried is in the set (either
direct or super), or that one of its ancestors is a direct member. Another way to
think about how this works is that two heaps A and B are said to overlap if
A.isSubtypeOf(B) or B.isSubtypeOf(A). This is sound since heaps form a
single-inheritance heirarchy. Consider that we wanted to implement a set that holds
heaps and answers the question, "is any member in the set an ancestor (i.e.
supertype) of some other heap". We would have the set contain the heaps themselves,
and we would satisfy the query "A.isSubtypeOfAny(set)" by walking the ancestor
chain of A, and repeatedly querying its membership in the set. This is what the
"direct" members of our set do. Now consider the other part, where we want to ask if
any member of the set is a descendent of a heap, or "A.isSupertypeOfAny(set)". We
would implement this by implementing set.add(B) as adding not just B but also all of
B's ancestors; then we would answer A.isSupertypeOfAny(set) by just checking if A is
in the set. With two such sets - one that answers isSubtypeOfAny() and another that
answers isSupertypeOfAny() - we could answer the "do any of my heaps overlap your
heap" question. ClobberSet does this, but combines the two sets into a single
HashMap. The HashMap's value, "direct", means that the key is a member of both the
supertype set and the subtype set; if it's false then it's only a member of one of
them.

Finally, this adds a functorized clobberize() method that adds the read and write
clobbers of a DFG::Node to read and write functors. Common functors for adding to
ClobberSets, querying overlap, and doing nothing are provided. Convenient wrappers
are also provided. This allows you to say things like:

ClobberSet set;
addWrites(graph, node1, set);
if (readsOverlap(graph, node2, set))

We know that node1 may write to something that node2 may read from.


Currently this facility is only used to improve graph dumping, but it will be
instrumental in both LICM and GVN. In the future, I want to completely kill the
NodeClobbersWorld and NodeMightClobber flags, and eradicate CSEPhase's hackish way
of accomplishing almost exactly what AbstractHeap gives you.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractHeap.cpp: Added.

(DFG):
(JSC::DFG::AbstractHeap::Payload::dump):
(JSC::DFG::AbstractHeap::dump):
(WTF):
(WTF::printInternal):

  • dfg/DFGAbstractHeap.h: Added.

(DFG):
(AbstractHeap):
(Payload):
(JSC::DFG::AbstractHeap::Payload::Payload):
(JSC::DFG::AbstractHeap::Payload::top):
(JSC::DFG::AbstractHeap::Payload::isTop):
(JSC::DFG::AbstractHeap::Payload::value):
(JSC::DFG::AbstractHeap::Payload::valueImpl):
(JSC::DFG::AbstractHeap::Payload::operator==):
(JSC::DFG::AbstractHeap::Payload::operator!=):
(JSC::DFG::AbstractHeap::Payload::operator<):
(JSC::DFG::AbstractHeap::Payload::isDisjoint):
(JSC::DFG::AbstractHeap::Payload::overlaps):
(JSC::DFG::AbstractHeap::AbstractHeap):
(JSC::DFG::AbstractHeap::operator!):
(JSC::DFG::AbstractHeap::kind):
(JSC::DFG::AbstractHeap::payload):
(JSC::DFG::AbstractHeap::isDisjoint):
(JSC::DFG::AbstractHeap::overlaps):
(JSC::DFG::AbstractHeap::supertype):
(JSC::DFG::AbstractHeap::hash):
(JSC::DFG::AbstractHeap::operator==):
(JSC::DFG::AbstractHeap::operator!=):
(JSC::DFG::AbstractHeap::operator<):
(JSC::DFG::AbstractHeap::isHashTableDeletedValue):
(JSC::DFG::AbstractHeap::payloadImpl):
(JSC::DFG::AbstractHeap::encode):
(JSC::DFG::AbstractHeapHash::hash):
(JSC::DFG::AbstractHeapHash::equal):
(AbstractHeapHash):
(WTF):

  • dfg/DFGClobberSet.cpp: Added.

(DFG):
(JSC::DFG::ClobberSet::ClobberSet):
(JSC::DFG::ClobberSet::~ClobberSet):
(JSC::DFG::ClobberSet::add):
(JSC::DFG::ClobberSet::addAll):
(JSC::DFG::ClobberSet::contains):
(JSC::DFG::ClobberSet::overlaps):
(JSC::DFG::ClobberSet::clear):
(JSC::DFG::ClobberSet::direct):
(JSC::DFG::ClobberSet::super):
(JSC::DFG::ClobberSet::dump):
(JSC::DFG::ClobberSet::setOf):
(JSC::DFG::addReads):
(JSC::DFG::addWrites):
(JSC::DFG::addReadsAndWrites):
(JSC::DFG::readsOverlap):
(JSC::DFG::writesOverlap):

  • dfg/DFGClobberSet.h: Added.

(DFG):
(ClobberSet):
(JSC::DFG::ClobberSet::isEmpty):
(ClobberSetAdd):
(JSC::DFG::ClobberSetAdd::ClobberSetAdd):
(JSC::DFG::ClobberSetAdd::operator()):
(ClobberSetOverlaps):
(JSC::DFG::ClobberSetOverlaps::ClobberSetOverlaps):
(JSC::DFG::ClobberSetOverlaps::operator()):
(JSC::DFG::ClobberSetOverlaps::result):

  • dfg/DFGClobberize.cpp: Added.

(DFG):
(JSC::DFG::didWrites):

  • dfg/DFGClobberize.h: Added.

(DFG):
(JSC::DFG::clobberize):
(NoOpClobberize):
(JSC::DFG::NoOpClobberize::NoOpClobberize):
(JSC::DFG::NoOpClobberize::operator()):
(CheckClobberize):
(JSC::DFG::CheckClobberize::CheckClobberize):
(JSC::DFG::CheckClobberize::operator()):
(JSC::DFG::CheckClobberize::result):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

Source/WTF:

Reviewed by Sam Weinig.

Fix compile goof in sortedListDump().

  • wtf/ListDump.h:

(WTF::sortedListDump):

8:57 PM Changeset in webkit [152958] by fpizlo@apple.com
  • 4 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: It should be easy to figure out which blocks nodes belong to
https://bugs.webkit.org/show_bug.cgi?id=118957

Reviewed by Sam Weinig.

  • dfg/DFGGraph.cpp:

(DFG):
(JSC::DFG::Graph::initializeNodeOwners):

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGNode.h:
8:36 PM Changeset in webkit [152957] by fpizlo@apple.com
  • 18 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: NodeExitsForward shouldn't be duplicated in NodeType
https://bugs.webkit.org/show_bug.cgi?id=118956

Reviewed by Sam Weinig.

We had two way of expressing that something exits forward: the NodeExitsForward
flag and the word 'Forward' in the NodeType. That's kind of dumb. This patch
makes it just be a flag.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::int32ToDoubleCSE):
(JSC::DFG::CSEPhase::checkStructureElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::injectInt32ToDoubleNode):

  • dfg/DFGMinifiedNode.h:

(JSC::DFG::belongsInMinifiedGraph):
(JSC::DFG::MinifiedNode::hasChild):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToStructureTransitionWatchpoint):
(JSC::DFG::Node::hasStructureSet):
(JSC::DFG::Node::hasStructure):
(JSC::DFG::Node::hasArrayMode):
(JSC::DFG::Node::willHaveCodeGenOrOSR):

  • dfg/DFGNodeType.h:

(DFG):
(JSC::DFG::needsOSRForwardRewiring):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::run):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):

  • dfg/DFGVariableEventStream.cpp:

(JSC::DFG::VariableEventStream::reconstruct):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::addExitArgumentForNode):

8:24 PM Changeset in webkit [152956] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Cleanup InspectorFrontendHostStub.js
https://bugs.webkit.org/show_bug.cgi?id=118959

Patch by Seokju Kwon <Seokju Kwon> on 2013-07-21
Reviewed by Timothy Hatcher.

Remove some functions because we dont use on New Inspector.

  • UserInterface/InspectorFrontendHostStub.js:

(.WebInspector.InspectorFrontendHostStub):
(.WebInspector.InspectorFrontendHostStub.prototype.save):

5:13 PM Changeset in webkit [152955] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source/WebCore

Introduce toSVGGradientElement(), use it
https://bugs.webkit.org/show_bug.cgi?id=118943

Reviewed by Andreas Kling.

As a step to change static_cast with toSVGXXX, static_cast<SVGGradientElement*> can
be changed with toSVGGradientElement().

No new tests, no behavior change.

  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::gradientElement):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/SVGResources.cpp:

(WebCore::targetReferenceFromResource):

  • svg/SVGGradientElement.h:

(WebCore::toSVGGradientElement):

  • svg/SVGLinearGradientElement.cpp:

(WebCore::SVGLinearGradientElement::collectGradientAttributes):

  • svg/SVGRadialGradientElement.cpp:

(WebCore::SVGRadialGradientElement::collectGradientAttributes):

4:42 PM Changeset in webkit [152954] by fpizlo@apple.com
  • 10 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: It should be possible for a DFG::Node to claim to exit to one CodeOrigin, but then claim that it belongs to a different CodeOrigin for all other purposes
https://bugs.webkit.org/show_bug.cgi?id=118946

Reviewed by Geoffrey Garen.

We want to decouple the exit target code origin of a node from the code origin
for all other purposes. The purposes of code origins are:

  • Where the node will exit, if it exits. The exit target should be consistent with the surrounding nodes, in that if you just looked at the code origins of nodes in the graph, they would be consistent with the code origins in bytecode. This is necessary for live-at-bytecode analyses to work, and to preserve the original bytecode semantics when exiting.


  • What kind of code the node came from, for semantics thingies. For example, we might use the code origin to find the node's global object for doing an original array check. Or we might use it to determine if the code is in strict mode. Or other similar things. When we use the code origin in this way, we're basically using it as a way of describing the node's meta-data without putting it into the node directly, to save space. In the absurd extreme you could imagine nodes not even having NodeTypes or NodeFlags, and just using the CodeOrigin to determine what bytecode the node originated from. We won't do that, but you can think of this use of code origins as just a way of compressing meta-data.


  • What code origin we should supply profiling to, if we exit. This is closely related to the semantics thingies, in that the exit profiling is a persistent kind of semantic meta-data that survives between recompiles, and the only way to do that is to ascribe it to the original bytecode via the code origin.


If we hoist a node, we need to change the exit target code origin, but we must not
change the code origin for other purposes. The best way to do this is to decouple
the two kinds of code origin.

OSR exit data structures already do this, because they may edit the exit target
code origin while keeping the code origin for profiling intact. This happens for
forward exits. So, we just need to thread separation all the way back to DFG::Node.
That's what this patch does.

  • dfg/DFGNode.h:

(JSC::DFG::Node::Node):
(Node):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):

  • dfg/DFGOSRExitBase.h:

(JSC::DFG::OSRExitBase::OSRExitBase):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(LowerDFGToLLVM):

  • ftl/FTLOSRExit.cpp:

(JSC::FTL::OSRExit::OSRExit):

  • ftl/FTLOSRExit.h:

(OSRExit):

2:44 PM Changeset in webkit [152953] by fpizlo@apple.com
  • 6 edits
    1 add in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: each DFG node that relies on other nodes to do their type checks should be able to tell you if those type checks happened
https://bugs.webkit.org/show_bug.cgi?id=118866

Reviewed by Sam Weinig.

Adds a safeToExecute() method that takes a node and an abstract state and tells you
if the node will run without crashing under that state.

(JSC::CodeBlock::CodeBlock):

  • dfg/DFGCFAPhase.cpp:

(CFAPhase):
(JSC::DFG::CFAPhase::CFAPhase):
(JSC::DFG::CFAPhase::run):
(JSC::DFG::CFAPhase::performBlockCFA):
(JSC::DFG::CFAPhase::performForwardCFA):

  • dfg/DFGSafeToExecute.h: Added.

(DFG):
(SafeToExecuteEdge):
(JSC::DFG::SafeToExecuteEdge::SafeToExecuteEdge):
(JSC::DFG::SafeToExecuteEdge::operator()):
(JSC::DFG::SafeToExecuteEdge::result):
(JSC::DFG::safeToExecute):

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::isValidOffset):
(StructureAbstractValue):

  • runtime/Options.h:

(JSC):

2:28 PM Changeset in webkit [152952] by fpizlo@apple.com
  • 9 edits
    3 adds in branches/dfgFourthTier

fourthTier: FTL should be able to generate LLVM IR that uses an intrinsic for OSR exit
https://bugs.webkit.org/show_bug.cgi?id=118948

Source/JavaScriptCore:

Reviewed by Sam Weinig.

  • Add the ability to generate LLVM IR but then not use it, via --llvmAlwaysFails=true. This allows doing "what if" experiments with IR generation, even if the generated IR can't yet execute.


  • Add an OSR exit path that just calls an intrinsic that combines the branch and the off-ramp.

(JSC::DFG::Plan::compileInThreadImpl):

  • ftl/FTLFail.cpp: Added.

(FTL):
(JSC::FTL::fail):

  • ftl/FTLFail.h: Added.

(FTL):

  • ftl/FTLIntrinsicRepository.h:

(FTL):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::emitOSRExitCall):

  • runtime/Options.h:

(JSC):

Tools:

Reviewed by Sam Weinig.

  • Make ReducedFTL capable of dealing with code that uses the fake OSR exit intrinsic, by exporting it as a function.


  • Make combineModules.rb idempotent. Sometimes it's convenient to run a file through it even if you know that you've already done so. See processIRDump.sh.


  • Add a script, processIRDump.sh, that takes the output of --dumpLLVMIR=true and runs it through ReducedFTL automatically. You typically want to say something like:


jsc --dumpLLVMIR=true <program(s)> > jsc-output.txt
./processIRDump.sh --timing < jsc-output.txt

  • ReducedFTL/ReducedFTL.c:

(webkit_osr_exit):

  • ReducedFTL/combineModules.rb:
  • ReducedFTL/processIRDump.sh: Added.
12:05 PM Changeset in webkit [152951] by akling@apple.com
  • 4 edits in trunk

KURL creates duplicate strings when completing data: URIs.
<http://webkit.org/b/118952>
<rdar://problem/14504480>

Reviewed by Anders Carlsson.

Source/WebCore:

When checking if the original URL input string can be reused, compare against the part
of the parsing buffer that we would actually return, not the entire buffer.

632 kB progression on <http://www.nytimes.com/>

Test: KURLTest.KURLDataURIStringSharing

  • platform/KURL.cpp:

(WebCore::KURL::parse):

Tools:

  • TestWebKitAPI/Tests/WebCore/KURL.cpp:

(TestWebKitAPI::TEST_F):

11:55 AM Changeset in webkit [152950] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Java Updater not launched on Lion and Mountain Lion
https://bugs.webkit.org/show_bug.cgi?id=118953
<rdar://problem/14496721>

Reviewed by Sam Weinig.

On Lion and Mountain Lion, -[NSURL isEqual:] will return NO for two file URLs if one of
them has "localhost" specified, even if the paths are otherwise equal. Work around this by
comparing the paths directly.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::isJavaUpdaterURL):

Jul 20, 2013:

6:45 PM Changeset in webkit [152949] by Brent Fulgham
  • 2 edits
    1 delete in trunk/Source/JavaScriptCore

[Windows] Remove unneeded custom stdint.h now that we build on VS2010.
https://bugs.webkit.org/show_bug.cgi?id=118868.

Reviewed by Anders Carlsson.

  • os-win32/stdint.h: Removed.
  • GNUmakefile.list.am: Removed reference to os-win32/stdint.h
6:02 PM Changeset in webkit [152948] by benjamin@webkit.org
  • 6 edits in trunk/Source/WebCore

Add ASCIILiteral() on strings allocated often enough to appear in my Instruments
https://bugs.webkit.org/show_bug.cgi?id=118937

Reviewed by Alexey Proskuryakov.

  • html/BaseCheckableInputType.cpp:

(WebCore::BaseCheckableInputType::saveFormControlState):
(WebCore::BaseCheckableInputType::fallbackValue):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::CachedScript):

  • platform/network/ResourceRequestBase.h:

(WebCore::ResourceRequestBase::ResourceRequestBase):

5:31 PM Changeset in webkit [152947] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Tools

fourthTier: We should use the no-asserts build of LLVM if that's what the user configured
https://bugs.webkit.org/show_bug.cgi?id=118947

Reviewed by Dan Bernstein.

  • Scripts/copy-webkitlibraries-to-product-directory:
3:23 PM Changeset in webkit [152946] by dino@apple.com
  • 43 edits
    1 move
    3 adds
    77 deletes in trunk/Source

Updated ANGLE is leaking like a sieve
https://bugs.webkit.org/show_bug.cgi?id=118939

Rollout 152863, r152821, r152929 and r152755.

Source/ThirdParty/ANGLE:

  • ANGLE.plist:
  • ANGLE.xcodeproj/project.pbxproj:
  • DerivedSources.make: Removed.
  • GNUmakefile.am:
  • Target.pri:
  • include/GLSLANG/ShaderLang.h:
  • src/compiler/BaseTypes.h:

(getQualifierString):

  • src/compiler/Common.h:

(EncodeSourceLoc):
(DecodeSourceLoc):

  • src/compiler/Compiler.cpp:

(TCompiler::TCompiler):
(TCompiler::Init):
(TCompiler::compile):
(TCompiler::detectRecursion):

  • src/compiler/ConstantUnion.h:

(ConstantUnion::ConstantUnion):

  • src/compiler/DetectCallDepth.cpp: Removed.
  • src/compiler/DetectRecursion.cpp: Added.

(DetectRecursion::FunctionNode::FunctionNode):
(DetectRecursion::FunctionNode::getName):
(DetectRecursion::FunctionNode::addCallee):
(DetectRecursion::FunctionNode::detectRecursion):
(DetectRecursion::DetectRecursion):
(DetectRecursion::~DetectRecursion):
(DetectRecursion::visitAggregate):
(DetectRecursion::detectRecursion):
(DetectRecursion::findFunctionByName):

  • src/compiler/DetectRecursion.h: Renamed from Source/ThirdParty/ANGLE/src/compiler/DetectCallDepth.h.
  • src/compiler/Diagnostics.cpp:

(TDiagnostics::writeInfo):

  • src/compiler/ForLoopUnroll.cpp:

(ForLoopUnroll::evaluateIntConstant):

  • src/compiler/InfoSink.cpp:

(TInfoSinkBase::prefix):
(TInfoSinkBase::location):
(TInfoSinkBase::message):

  • src/compiler/InfoSink.h:
  • src/compiler/Initialize.cpp:

(BuiltInFunctionsCommon):
(BuiltInFunctionsVertex):
(TBuiltIns::initialize):
(IdentifyBuiltIns):
(InitExtensionBehavior):

  • src/compiler/Intermediate.cpp:

(TIntermediate::addSymbol):
(TIntermediate::addBinaryMath):
(TIntermediate::addAssign):
(TIntermediate::addIndex):
(TIntermediate::addUnaryMath):
(TIntermediate::setAggregateOperator):
(TIntermediate::addConversion):
(TIntermediate::growAggregate):
(TIntermediate::makeAggregate):
(TIntermediate::addSelection):
(TIntermediate::addComma):
(TIntermediate::addConstantUnion):
(TIntermediate::addSwizzle):
(TIntermediate::addLoop):
(TIntermediate::addBranch):
(TIntermUnary::promote):
(TIntermBinary::promote):
(CompareStruct):
(CompareStructure):
(TIntermConstantUnion::fold):
(TIntermediate::promoteConstantUnion):

  • src/compiler/OutputGLSL.cpp:

(TOutputGLSL::writeVariablePrecision):

  • src/compiler/OutputGLSL.h:
  • src/compiler/OutputGLSLBase.cpp:

(TOutputGLSLBase::writeVariableType):
(TOutputGLSLBase::writeConstantUnion):
(TOutputGLSLBase::visitBinary):
(TOutputGLSLBase::visitAggregate):
(TOutputGLSLBase::getTypeName):
(TOutputGLSLBase::hashFunctionName):

  • src/compiler/OutputGLSLBase.h:
  • src/compiler/OutputHLSL.cpp:

(sh::OutputHLSL::OutputHLSL):
(sh::OutputHLSL::header):
(sh::OutputHLSL::visitSymbol):
(sh::OutputHLSL::visitBinary):
(sh::OutputHLSL::visitAggregate):
(sh::OutputHLSL::visitSelection):
(sh::OutputHLSL::visitLoop):
(sh::OutputHLSL::handleExcessiveLoop):
(sh::OutputHLSL::typeString):
(sh::OutputHLSL::initializer):
(sh::OutputHLSL::addConstructor):
(sh::OutputHLSL::writeConstantUnion):
(sh::OutputHLSL::decorateField):

  • src/compiler/OutputHLSL.h:
  • src/compiler/ParseHelper.cpp:

(TParseContext::parseVectorFields):
(TParseContext::parseMatrixFields):
(TParseContext::error):
(TParseContext::warning):
(TParseContext::assignError):
(TParseContext::unaryOpError):
(TParseContext::binaryOpError):
(TParseContext::precisionErrorCheck):
(TParseContext::lValueErrorCheck):
(TParseContext::globalErrorCheck):
(TParseContext::reservedErrorCheck):
(TParseContext::constructorErrorCheck):
(TParseContext::voidErrorCheck):
(TParseContext::boolErrorCheck):
(TParseContext::samplerErrorCheck):
(TParseContext::structQualifierErrorCheck):
(TParseContext::parameterSamplerErrorCheck):
(TParseContext::containsSampler):
(TParseContext::arraySizeErrorCheck):
(TParseContext::arrayQualifierErrorCheck):
(TParseContext::arrayTypeErrorCheck):
(TParseContext::arrayErrorCheck):
(TParseContext::arraySetMaxSize):
(TParseContext::nonInitConstErrorCheck):
(TParseContext::nonInitErrorCheck):
(TParseContext::paramErrorCheck):
(TParseContext::extensionErrorCheck):
(TParseContext::handleExtensionDirective):
(TParseContext::handlePragmaDirective):
(TParseContext::findFunction):
(TParseContext::executeInitializer):
(TParseContext::addConstructor):
(TParseContext::constructBuiltIn):
(TParseContext::constructStruct):
(TParseContext::addConstVectorNode):
(TParseContext::addConstMatrixNode):
(TParseContext::addConstArrayNode):
(TParseContext::addConstStruct):
(TParseContext::enterStructDeclaration):
(TParseContext::structNestingErrorCheck):

  • src/compiler/ParseHelper.h:

(TParseContext::TParseContext):
(TParseContext::pragma):

  • src/compiler/PoolAlloc.cpp:

(TPoolAllocator::allocate):

  • src/compiler/ShHandle.h:
  • src/compiler/ShaderLang.cpp:

(ShInitBuiltInResources):

  • src/compiler/SymbolTable.cpp:

(TType::TType):
(TType::buildMangledName):
(TType::getStructSize):
(TType::computeDeepestStructNesting):
(TType::isStructureContainingArrays):
(TSymbolTableLevel::relateToExtension):
(TSymbol::TSymbol):
(TVariable::TVariable):
(TVariable::clone):
(TFunction::TFunction):
(TFunction::clone):
(TSymbolTableLevel::clone):
(TSymbolTable::copyTable):

  • src/compiler/SymbolTable.h:

(TVariable::TVariable):
(TVariable::updateArrayInformationType):
(TVariable::getArrayInformationType):
(TParameter::copyParam):
(TFunction::relateToExtension):
(TFunction::getExtension):

  • src/compiler/Types.h:

(NewPoolTTypeList):
(TType::TType):
(TType::copyType):
(TType::clone):
(TType::getObjectSize):
(TType::getMaxArraySize):
(TType::setMaxArraySize):
(TType::clearArrayness):
(TType::setArrayInformationType):
(TType::getArrayInformationType):
(TType::getStruct):
(TType::setStruct):
(TType::getTypeName):
(TType::setTypeName):
(TType::isField):
(TType::getFieldName):
(TType::setFieldName):
(TType::getMangledName):
(TType::getDeepestStructNesting):
(TPublicType::setBasic):

  • src/compiler/VariableInfo.cpp:

(getUserDefinedVariableInfo):

  • src/compiler/builtin_symbol_table.cpp: Removed.
  • src/compiler/builtin_symbol_table.h: Removed.
  • src/compiler/builtin_symbols.json: Removed.
  • src/compiler/generate_builtin_symbol_table.py: Removed.
  • src/compiler/glslang.l:
  • src/compiler/glslang.y:
  • src/compiler/glslang_lex.cpp:

(yy_get_previous_state):
(yy_try_NUL_trans):
(yy_push_state):
(yy_pop_state):
(yy_top_state):
(string_input):
(check_type):
(reserved_word):
(yyerror):
(glslang_scan):

  • src/compiler/glslang_tab.cpp:
  • src/compiler/glslang_tab.h:
  • src/compiler/intermOut.cpp:

(TOutputTraverser::visitUnary):
(TOutputTraverser::visitAggregate):
(TOutputTraverser::visitConstantUnion):

  • src/compiler/intermediate.h:

(TIntermNode::TIntermNode):
(TIntermNode::getLine):
(TIntermNode::setLine):
(TIntermNode::~TIntermNode):
(TIntermConstantUnion::setUnionArrayPointer):
(TIntermAggregate::TIntermAggregate):
(TIntermAggregate::setEndLine):
(TIntermAggregate::getEndLine):
(TIntermTraverser::TIntermTraverser):
(TIntermTraverser::incrementDepth):

  • src/compiler/localintermediate.h:
  • src/compiler/parseConst.cpp:

(TConstTraverser::visitSymbol):
(TConstTraverser::visitBinary):
(TConstTraverser::visitUnary):
(TConstTraverser::visitAggregate):
(TConstTraverser::visitSelection):
(TConstTraverser::visitConstantUnion):
(TConstTraverser::visitLoop):
(TConstTraverser::visitBranch):
(TIntermediate::parseConstTree):

  • src/compiler/timing/RestrictVertexShaderTiming.cpp:

(RestrictVertexShaderTiming::visitSymbol):

  • src/libEGL/Config.cpp: Removed.
  • src/libEGL/Config.h: Removed.
  • src/libEGL/Display.cpp: Removed.
  • src/libEGL/Display.h: Removed.
  • src/libEGL/README: Added.
  • src/libEGL/ShaderCache.h: Removed.
  • src/libEGL/Surface.cpp: Removed.
  • src/libEGL/Surface.h: Removed.
  • src/libEGL/libEGL.cpp: Removed.
  • src/libEGL/libEGL.def: Removed.
  • src/libEGL/libEGL.rc: Removed.
  • src/libEGL/libEGL.vcxproj: Removed.
  • src/libEGL/libEGL.vcxproj.filters: Removed.
  • src/libEGL/main.cpp: Removed.
  • src/libEGL/main.h: Removed.
  • src/libEGL/resource.h: Removed.
  • src/libGLESv2/BinaryStream.h: Removed.
  • src/libGLESv2/Blit.cpp: Removed.
  • src/libGLESv2/Blit.h: Removed.
  • src/libGLESv2/Buffer.cpp: Removed.
  • src/libGLESv2/Buffer.h: Removed.
  • src/libGLESv2/Context.cpp: Removed.
  • src/libGLESv2/Context.h: Removed.
  • src/libGLESv2/D3DConstantTable.cpp: Removed.
  • src/libGLESv2/D3DConstantTable.h: Removed.
  • src/libGLESv2/Fence.cpp: Removed.
  • src/libGLESv2/Fence.h: Removed.
  • src/libGLESv2/Float16ToFloat32.cpp: Removed.
  • src/libGLESv2/Float16ToFloat32.py: Removed.
  • src/libGLESv2/Framebuffer.cpp: Removed.
  • src/libGLESv2/Framebuffer.h: Removed.
  • src/libGLESv2/HandleAllocator.cpp: Removed.
  • src/libGLESv2/HandleAllocator.h: Removed.
  • src/libGLESv2/IndexDataManager.cpp: Removed.
  • src/libGLESv2/IndexDataManager.h: Removed.
  • src/libGLESv2/Program.cpp: Removed.
  • src/libGLESv2/Program.h: Removed.
  • src/libGLESv2/ProgramBinary.cpp: Removed.
  • src/libGLESv2/ProgramBinary.h: Removed.
  • src/libGLESv2/Query.cpp: Removed.
  • src/libGLESv2/Query.h: Removed.
  • src/libGLESv2/README: Added.
  • src/libGLESv2/Renderbuffer.cpp: Removed.
  • src/libGLESv2/Renderbuffer.h: Removed.
  • src/libGLESv2/ResourceManager.cpp: Removed.
  • src/libGLESv2/ResourceManager.h: Removed.
  • src/libGLESv2/Shader.cpp: Removed.
  • src/libGLESv2/Shader.h: Removed.
  • src/libGLESv2/Texture.cpp: Removed.
  • src/libGLESv2/Texture.h: Removed.
  • src/libGLESv2/TextureSSE2.cpp: Removed.
  • src/libGLESv2/VertexDataManager.cpp: Removed.
  • src/libGLESv2/VertexDataManager.h: Removed.
  • src/libGLESv2/libGLESv2.cpp: Removed.
  • src/libGLESv2/libGLESv2.def: Removed.
  • src/libGLESv2/libGLESv2.rc: Removed.
  • src/libGLESv2/libGLESv2.vcxproj: Removed.
  • src/libGLESv2/libGLESv2.vcxproj.filters: Removed.
  • src/libGLESv2/main.cpp: Removed.
  • src/libGLESv2/main.h: Removed.
  • src/libGLESv2/mathutil.h: Removed.
  • src/libGLESv2/resource.h: Removed.
  • src/libGLESv2/shaders/Blit.ps: Removed.
  • src/libGLESv2/shaders/Blit.vs: Removed.
  • src/libGLESv2/shaders/componentmaskps.h: Removed.
  • src/libGLESv2/shaders/flipyvs.h: Removed.
  • src/libGLESv2/shaders/generate_shaders.bat: Removed.
  • src/libGLESv2/shaders/luminanceps.h: Removed.
  • src/libGLESv2/shaders/passthroughps.h: Removed.
  • src/libGLESv2/shaders/standardvs.h: Removed.
  • src/libGLESv2/utilities.cpp: Removed.
  • src/libGLESv2/utilities.h: Removed.
  • src/libGLESv2/vertexconversion.h: Removed.

Source/WebCore:

  • CMakeLists.txt:
11:39 AM Changeset in webkit [152945] by fpizlo@apple.com
  • 4 edits
    1 add in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: StringObjectUse uses structures, and CSE should know that
https://bugs.webkit.org/show_bug.cgi?id=118940

Reviewed by Geoffrey Garen.

This is asymptomatic right now, but we should fix it.

(JSC::DFG::CSEPhase::putStructureStoreElimination):

  • dfg/DFGEdgeUsesStructure.h: Added.

(DFG):
(EdgeUsesStructure):
(JSC::DFG::EdgeUsesStructure::EdgeUsesStructure):
(JSC::DFG::EdgeUsesStructure::operator()):
(JSC::DFG::EdgeUsesStructure::result):
(JSC::DFG::edgesUseStructure):

  • dfg/DFGUseKind.h:

(DFG):
(JSC::DFG::usesStructure):

10:58 AM Changeset in webkit [152944] by fpizlo@apple.com
  • 9 edits
    13 adds in branches/dfgFourthTier

fourthTier: String GetByVal out-of-bounds handling is so wrong
https://bugs.webkit.org/show_bug.cgi?id=118935

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Bunch of String GetByVal out-of-bounds fixes:

  • Even if the string proto chain is sane, we need to watch out for negative indices. They may get values or call getters in the prototypes, since proto sanity doesn't check for negative indexed properties, as they are not technically indexed properties.


  • GetByVal String out-of-bounds does in fact clobberWorld(). CSE should be given this information.


  • GetByVal String out-of-bounds does in fact clobberWorld(). CFA should be given this information.


Also fixed some other things:

  • If the DFG is disabled, the testRunner should pretend that we've done a bunch of DFG compiles. That's necessary to prevent the tests from timing out.


  • Disassembler shouldn't try to dump source code since it's not safe in the concurrent JIT.
  • API/JSCTestRunnerUtils.cpp:

(JSC::numberOfDFGCompiles):

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGDisassembler.cpp:

(JSC::DFG::Disassembler::dumpHeader):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::byValIsPure):

  • dfg/DFGSaneStringGetByValSlowPathGenerator.h: Added.

(DFG):
(SaneStringGetByValSlowPathGenerator):
(JSC::DFG::SaneStringGetByValSlowPathGenerator::SaneStringGetByValSlowPathGenerator):
(JSC::DFG::SaneStringGetByValSlowPathGenerator::generateInternal):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetByValOnString):

LayoutTests:

Reviewed by Geoffrey Garen.

  • fast/js/dfg-string-out-of-bounds-check-structure-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-check-structure.html: Added.
  • fast/js/dfg-string-out-of-bounds-cse-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-cse.html: Added.
  • fast/js/dfg-string-out-of-bounds-negative-check-structure-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-negative-check-structure.html: Added.
  • fast/js/dfg-string-out-of-bounds-negative-proto-value-expected.txt: Added.
  • fast/js/dfg-string-out-of-bounds-negative-proto-value.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-string-out-of-bounds-check-structure.js: Added.

(foo):

  • fast/js/script-tests/dfg-string-out-of-bounds-cse.js: Added.

(foo):

  • fast/js/script-tests/dfg-string-out-of-bounds-negative-check-structure.js: Added.

(foo):
(while):

  • fast/js/script-tests/dfg-string-out-of-bounds-negative-proto-value.js: Added.

(foo):

12:26 AM Changeset in webkit [152943] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Pagination: Do not paint the baseBackgroundColor if asked to skipRootBackground.
https://bugs.webkit.org/show_bug.cgi?id=118933

Reviewed by Simon Fraser.

Captions rendered through TextTrackRepresentation are rendered with a background
color when in paginated views. Do not fill the paint area with the
baseBackgroundColor when the paint flags include SkipRootBackground.

  • rendering/RenderView.cpp:

(WebCore::RenderView::paint):

12:02 AM Changeset in webkit [152942] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.0.4

Tagging the WebKitGTK+ 2.0.4 release

Jul 19, 2013:

11:43 PM Changeset in webkit [152941] by beidson@apple.com
  • 15 edits
    9 adds in trunk

Pages should not be able to abuse users inside beforeunload handlers.
<rdar://problem/14475779> and https://bugs.webkit.org/show_bug.cgi?id=118871.

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests: fast/loader/show-only-one-beforeunload-dialog.html

http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin.html
http/tests/misc/iframe-beforeunload-dialog-not-matching-ancestor-securityorigin.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::shouldClose):
(WebCore::FrameLoader::handleBeforeUnloadEvent):
(WebCore::FrameLoader::shouldCloseFiringBeforeUnloadEvent): Renamed from fireBeforeUnloadEvent.

Add logic to enforce "1 beforeunload dialog per navigation" as well as "iframes can only show beforeunload
dialogs if their entire ancestry's security origins match the navigating frame."

  • loader/FrameLoader.h:
  • loader/FrameLoader.h:

Add the ability for Page to know when any frame is dispatching beforeunload:

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::incrementFrameHandlingBeforeUnloadEventCount):
(WebCore::Page::decrementFrameHandlingBeforeUnloadEventCount):
(WebCore::Page::isAnyFrameHandlingBeforeUnloadEvent):

  • page/Page.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::print): Disallow if any frame is in beforeunload dispatch.
(WebCore::DOMWindow::alert): Ditto.
(WebCore::DOMWindow::confirm): Ditto.
(WebCore::DOMWindow::prompt): Ditto.
(WebCore::DOMWindow::showModalDialog): Ditto.

LayoutTests:

In addition to the new tests, updated some results of previous tests that were relying on "alert"
as a poor man's logging method.

  • fast/events/onbeforeunload-focused-iframe-expected.txt:
  • fast/events/onbeforeunload-focused-iframe.html:
  • fast/events/onunload-clears-onbeforeunload-expected.txt:
  • fast/events/onunload-clears-onbeforeunload.html:
  • fast/loader/page-dismissal-modal-dialogs-expected.txt:
  • fast/loader/page-dismissal-modal-dialogs.html:
  • fast/loader/recursive-before-unload-crash-expected.txt:
  • fast/loader/recursive-before-unload-crash.html:
  • fast/loader/resources/iframe-with-beforeunload.html: Added.
  • fast/loader/show-only-one-beforeunload-dialog-expected.txt: Added.
  • fast/loader/show-only-one-beforeunload-dialog.html: Added.
  • http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin-expected.txt: Added.
  • http/tests/misc/iframe-beforeunload-dialog-matching-ancestor-securityorigin.html: Added.
  • http/tests/misc/iframe-beforeunload-dialog-not-matching-ancestor-securityorigin-expected.txt: Added.
  • http/tests/misc/iframe-beforeunload-dialog-not-matching-ancestor-securityorigin.html: Added.
  • http/tests/misc/resources/iframe-with-beforeunload.html: Added.
  • http/tests/misc/resources/notify-done.html: Added.
11:42 PM Changeset in webkit [152940] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0

Unreviewed. Update NEWS and Versions.m4 for 2.0.4 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.0.4.
8:37 PM Changeset in webkit [152939] by Chris Fleizach
  • 5 edits in trunk

AX: VoiceOver not detecting misspelled words don't work in all cases
https://bugs.webkit.org/show_bug.cgi?id=118924

Reviewed by Tim Horton.

Source/WebCore:

VoiceOver is now looking for a new misspelled attribute.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(AXAttributeStringSetSpelling):
(AXAttributedStringAppendText):

Tools:

Make the misspelled detection dependent on both types of attributes being present.

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::attributedStringRangeIsMisspelled):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):

7:59 PM Changeset in webkit [152938] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Extract computeRenderStyleForProperty and nodeOrItsAncestorNeedsStyleRecalc from ComputedStyleExtractor::propertyValue
https://bugs.webkit.org/show_bug.cgi?id=118930

Reviewed by Andreas Kling.

Extracted two functions as a preparation to fix bugs 118032 and 118618.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::nodeOrItsAncestorNeedsStyleRecalc):
(WebCore::computeRenderStyleForProperty):
(WebCore::ComputedStyleExtractor::propertyValue):

7:53 PM Changeset in webkit [152937] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Structure::isValidOffset() should be able to tell you if you're loading a valid JSValue, and not just not crashing
https://bugs.webkit.org/show_bug.cgi?id=118911

Reviewed by Geoffrey Garen.

We could also have a separate method like "willNotCrash(offset)", but that's not
what isValidOffset() is intended to mean.

  • runtime/Structure.h:

(JSC::Structure::isValidOffset):

6:32 PM Changeset in webkit [152936] by Stephanie Lewis
  • 2 edits in trunk/Tools

<rdar://problem/14499595> pagination wk2 api test failing on ML (118928)

Unreviewed.

Rebaseline pagination test after http://trac.webkit.org/changeset/152911

  • TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp:

(TestWebKitAPI::didLayout):

5:58 PM Changeset in webkit [152935] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Cache style declaration CSSOM wrappers directly on MutableStylePropertySet.
<http://webkit.org/b/118883>

Reviewed by Gavin Barraclough

Merge https://chromium.googlesource.com/chromium/blink/+/183bcd51eb0e79cab930cf46695df05dc793630f
From Blink r153700 by <ager@chromium.org>:

In my measurements the mapping is adding more overhead than just having a field
in all MutableStylePropertySet objects. So this saves memory and makes access
faster.

  • css/StylePropertySet.cpp:

(WebCore::MutableStylePropertySet::MutableStylePropertySet):
(WebCore::MutableStylePropertySet::~MutableStylePropertySet):
(WebCore::StylePropertySet::hasCSSOMWrapper):
(WebCore::MutableStylePropertySet::cssStyleDeclaration):
(WebCore::MutableStylePropertySet::ensureCSSStyleDeclaration):
(WebCore::MutableStylePropertySet::ensureInlineCSSStyleDeclaration):

  • css/StylePropertySet.h:

(WebCore::StylePropertySet::StylePropertySet):

5:11 PM Changeset in webkit [152934] by achristensen@apple.com
  • 3 edits in trunk/Tools

Improved code coverage generation.
https://bugs.webkit.org/show_bug.cgi?id=118926

Reviewed by Tim Horton.

  • Scripts/build-webkit: Removed exception preventing ANGLE code coverage support.
  • Scripts/generate-coverage-data: Added --no-build to run-javascriptcore-tests call.

(generateReport): Moved report generation to a subroutine.

4:30 PM Changeset in webkit [152933] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix on Windows after r152930.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Added missing close paren.
4:08 PM Changeset in webkit [152932] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

Some compositing tests fail on ML WK2 Debugi
https://bugs.webkit.org/show_bug.cgi?id=118925

Unreviewed.

  • platform/mac-wk2/TestExpectations:
3:46 PM Changeset in webkit [152931] by dbates@webkit.org
  • 2 edits in trunk/Tools

Make Perl tools work when using git bisect with Git branch build setup
https://bugs.webkit.org/show_bug.cgi?id=118512

Reviewed by Martin Robinson.

The various Perl tools (run-webkit-app, {debug, run}-safari, et cetera) don't work
during a git bisect session with a Git branch build setup (i.e. git config
core.webKitBranchBuild true). Specifically, the tools cannot find the branch-
specific build of WebKit because they cannot determine the branch Git is on (since
git bisect puts Git into a detached HEAD state). We should teach our tooling to
parse the file .git/BISECT_START (created by git bisect start) for the name of the
branch Git was on when we began a git bisect session. Then the tools can determine
the path to the built WebKit.

  • Scripts/VCSUtils.pm:

(gitDirectory): Added.
(gitBisectStartBranch): Added.
(gitBranch): Modified to call gitBisectStartBranch() when we have a detached
HEAD (e.g. running git bisect).
(determineVCSRoot): Modified to call gitDirectory() to determine the path to
the .git directory in the Git checkout.

3:44 PM Changeset in webkit [152930] by achristensen@apple.com
  • 3 edits in trunk/Source/WebKit

Added 64-bit symbols to WebKitExports.def.in for 64-bit Windows builds
and a macro to only use them for 64-bit builds.
https://bugs.webkit.org/show_bug.cgi?id=118887

Reviewed by Brent Fulgham.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Added 64-bit symbols.
  • WebKit.vcxproj/WebKitExportGenerator/make-export-file-generator:

Added support for new symbolWithPointer macro.

3:07 PM Changeset in webkit [152929] by achristensen@apple.com
  • 2 edits
    1 add in trunk/Source/ThirdParty/ANGLE

Generate derived files in ANGLE at build time rather than when updating from upstream.
https://bugs.webkit.org/show_bug.cgi?id=118872

Reviewed by Mark Rowe.

  • ANGLE.xcodeproj/project.pbxproj: Made Derived Sources target which calls DerivedSources.make,

moved generated files into Derived Sources group.

  • DerivedSources.make: Added.
2:51 PM Changeset in webkit [152928] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip failing tests to make WinEWS bots happy.

  • platform/win/TestExpectations:
2:40 PM Changeset in webkit [152927] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

[Windows] Avoid passing addresses of temporaries to Windows API.
https://bugs.webkit.org/show_bug.cgi?id=118917

Reviewed by Anders Carlsson.

The temporary Vector returned by String::charactersWithNullTermination
was going out of scope before its first use, causing Windows API to
receive garbage memory.

  • platform/win/ContextMenuWin.cpp:

(WebCore::ContextMenu::createPlatformContextMenuFromItems):

  • platform/win/PasteboardWin.cpp:

(WebCore::createGlobalHDropContent):

  • platform/win/SSLKeyGeneratorWin.cpp:

(WebCore::WebCore::signedPublicKeyAndChallengeString):

1:54 PM Changeset in webkit [152926] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unskip flaky tests on AppleWin.
Flakiness is not an issue with the tests themselves but with the test infrastructure.

  • platform/win/TestExpectations:
1:32 PM Changeset in webkit [152925] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Remove lineWithinShapeBounds() from ShapeInfo since it's no longer used
https://bugs.webkit.org/show_bug.cgi?id=118913

Reviewed by Andreas Kling.

No new tests, no behavior change.

  • rendering/shapes/ShapeInfo.h: Remove lineWithinShapeBounds().
1:30 PM Changeset in webkit [152924] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some flaky tests on AppleWin port.

  • platform/win/TestExpectations:
1:14 PM Changeset in webkit [152923] by commit-queue@webkit.org
  • 3 edits
    17 adds
    48 deletes in trunk/LayoutTests

More conversions from MathML pixel tests to reftests.
https://bugs.webkit.org/show_bug.cgi?id=118853

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-19
Reviewed by Chris Fleizach.

  • mathml/presentation/fenced-expected.html: Added.
  • mathml/presentation/fenced-mi-expected.html: Added.
  • mathml/presentation/fenced-mi.html: Added.
  • mathml/presentation/fenced-mi.xhtml: Removed.
  • mathml/presentation/fenced.html: Added.
  • mathml/presentation/fenced.xhtml: Removed.
  • mathml/presentation/mroot-pref-width-expected.html: Added.
  • mathml/presentation/mroot-pref-width.html:
  • mathml/presentation/row-alignment.xhtml: Removed.
  • mathml/presentation/style-border-padding-background-expected.html: Added.
  • mathml/presentation/style-border-padding-background.html: Added.
  • mathml/presentation/style-color-sqrt-expected-mismatch.html: Added.
  • mathml/presentation/style-color-sqrt.html: Added.
  • mathml/presentation/style.xhtml: Removed.
  • mathml/presentation/tables-columnalign-expected.html: Added.
  • mathml/presentation/tables-columnalign.html: Added.
  • mathml/presentation/tables-simple-expected.html: Added.
  • mathml/presentation/tables-simple.html: Added.
  • mathml/presentation/tables-spans-dynamic-expected.html: Added.
  • mathml/presentation/tables-spans-dynamic.html: Added.
  • mathml/presentation/tables-spans-expected.html: Added.
  • mathml/presentation/tables-spans.html: Added.
  • mathml/presentation/tables.xhtml: Removed.
  • mathml/xHeight.xhtml: Removed.
  • platform/efl/mathml/presentation/fenced-expected.png: Removed.
  • platform/efl/mathml/presentation/fenced-expected.txt: Removed.
  • platform/efl/mathml/presentation/fenced-mi-expected.png: Removed.
  • platform/efl/mathml/presentation/fenced-mi-expected.txt: Removed.
  • platform/efl/mathml/presentation/mroot-pref-width-expected.png: Removed.
  • platform/efl/mathml/presentation/mroot-pref-width-expected.txt: Removed.
  • platform/efl/mathml/presentation/row-alignment-expected.png: Removed.
  • platform/efl/mathml/presentation/row-alignment-expected.txt: Removed.
  • platform/efl/mathml/presentation/style-expected.png: Removed.
  • platform/efl/mathml/presentation/style-expected.txt: Removed.
  • platform/efl/mathml/presentation/tables-expected.png: Removed.
  • platform/efl/mathml/presentation/tables-expected.txt: Removed.
  • platform/efl/mathml/xHeight-expected.png: Removed.
  • platform/efl/mathml/xHeight-expected.txt: Removed.
  • platform/gtk/mathml/presentation/fenced-expected.png: Removed.
  • platform/gtk/mathml/presentation/fenced-expected.txt: Removed.
  • platform/gtk/mathml/presentation/fenced-mi-expected.png: Removed.
  • platform/gtk/mathml/presentation/fenced-mi-expected.txt: Removed.
  • platform/gtk/mathml/presentation/mroot-pref-width-expected.png: Removed.
  • platform/gtk/mathml/presentation/mroot-pref-width-expected.txt: Removed.
  • platform/gtk/mathml/presentation/row-alignment-expected.png: Removed.
  • platform/gtk/mathml/presentation/row-alignment-expected.txt: Removed.
  • platform/gtk/mathml/presentation/style-expected.png: Removed.
  • platform/gtk/mathml/presentation/style-expected.txt: Removed.
  • platform/gtk/mathml/presentation/tables-expected.png: Removed.
  • platform/gtk/mathml/presentation/tables-expected.txt: Removed.
  • platform/gtk/mathml/xHeight-expected.png: Removed.
  • platform/gtk/mathml/xHeight-expected.txt: Removed.
  • platform/mac/TestExpectations:
  • platform/mac/mathml/presentation/fenced-expected.png: Removed.
  • platform/mac/mathml/presentation/fenced-expected.txt: Removed.
  • platform/mac/mathml/presentation/fenced-mi-expected.png: Removed.
  • platform/mac/mathml/presentation/fenced-mi-expected.txt: Removed.
  • platform/mac/mathml/presentation/mroot-pref-width-expected.png: Removed.
  • platform/mac/mathml/presentation/mroot-pref-width-expected.txt: Removed.
  • platform/mac/mathml/presentation/row-alignment-expected.png: Removed.
  • platform/mac/mathml/presentation/row-alignment-expected.txt: Removed.
  • platform/mac/mathml/presentation/style-expected.png: Removed.
  • platform/mac/mathml/presentation/style-expected.txt: Removed.
  • platform/mac/mathml/presentation/tables-expected.png: Removed.
  • platform/mac/mathml/presentation/tables-expected.txt: Removed.
  • platform/mac/mathml/xHeight-expected.png: Removed.
  • platform/mac/mathml/xHeight-expected.txt: Removed.
1:04 PM Changeset in webkit [152922] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/Source/WebKit2

[GTK] Need a way to enable region based columns from the command line
https://bugs.webkit.org/show_bug.cgi?id=116611

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-07-19
Reviewed by Martin Robinson.

Add an environment variable to enable experimental features.

This provides a means to enable experimental features without polluting
the public API.

Environment variable name: WEBKITGTK_EXPERIMENTAL_FEATURES

Format: WEBKITGTK_EXPERIMENTAL_FEATURES="<feature1>=1,<feature2>=1,..."
Or, to enable all experimental features: WEBKITGTK_EXPERIMENTAL_FEATURES=all

So far the only feature is region based columns (implement multicol using
the CSS regions implementation rather than ColumnInfo & co) - REGION_BASED_COLUMNS.

Example: WEBKITGTK_EXPERIMENTAL_FEATURES="REGION_BASED_COLUMNS=1"

  • GNUmakefile.list.am:
  • PlatformGTK.cmake:
  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsConstructed):
(webkit_settings_class_init):

  • UIProcess/gtk/ExperimentalFeatures.cpp: Added.

(WebKit):
(Setting):
(WebKit::ExperimentalFeatures::ExperimentalFeatures):
(WebKit::ExperimentalFeatures::isEnabled):
(WebKit::ExperimentalFeatures::setEnableByName):
(WebKit::ExperimentalFeatures::parseEnvironment):

  • UIProcess/gtk/ExperimentalFeatures.h: Added.

(WebKit):
(ExperimentalFeatures):

12:43 PM Changeset in webkit [152921] by achristensen@apple.com
  • 40 edits in trunk

Added x64 configuration to Visual Studio build.
https://bugs.webkit.org/show_bug.cgi?id=118888

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

Source/ThirdParty:

  • gtest/msvc/gtest-md.vcxproj:

Source/WebCore:

  • WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCoreGenerated.vcxproj:
  • WebCore.vcxproj/WebCoreTestSupport.vcxproj:

Source/WebKit:

  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj:
  • WebKit.vcxproj/WebKit.sln:
  • WebKit.vcxproj/WebKit/WebKit.vcxproj:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj.filters:
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj:
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj.filters:

Source/WTF:

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.vcxproj/WTFGenerated.vcxproj:

Tools:

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj.filters:
  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiff.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiffLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/TestNetscapePlugin/TestNetscapePlugin.vcxproj:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj:
  • win/record-memory/record-memory.vcxproj:
12:42 PM Changeset in webkit [152920] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some flaky tests on AppleWin port.

  • platform/win/TestExpectations:
12:21 PM Changeset in webkit [152919] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Spatial Navigation handling of space key in <select> appears to confuse listIndex and optionIndex.
https://bugs.webkit.org/show_bug.cgi?id=99525

Source/WebCore:

HTMLSelect Element inherently contains the logic to focus option node and thus, implementing an explicit logic to find the focus index is not required.

Patch by Abhijeet Kandalkar <abhijeet.k@samsung.com> on 2013-07-19
Reviewed by Joseph Pecoraro.

Test: fast/spatial-navigation/snav-multiple-select-optgroup.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):

  • page/SpatialNavigation.cpp:

(WebCore::canScrollInDirection):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::addFocusRingRects):

LayoutTests:

Added testcase to test support of option group within HTMLSelect element.

Patch by Abhijeet Kandalkar <abhijeet.k@samsung.com> on 2013-07-19
Reviewed by Joseph Pecoraro.

  • fast/spatial-navigation/snav-multiple-select-optgroup-expected.txt: Added.
  • fast/spatial-navigation/snav-multiple-select-optgroup.html: Added.
11:56 AM Changeset in webkit [152918] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r152877. <rdar://problem/14271327>

11:55 AM Changeset in webkit [152917] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152818. <rdar://problem/14473897>

11:54 AM Changeset in webkit [152916] by Lucas Forschler
  • 12 edits
    12 copies in branches/safari-537-branch

Merged r152813. <rdar://problem/14473897>

11:51 AM Changeset in webkit [152915] by Lucas Forschler
  • 2 edits in tags/Safari-537.51.3/Source/WebKit2

Merged r152877. <rdar://problem/14271327>

11:49 AM Changeset in webkit [152914] by Lucas Forschler
  • 3 edits in tags/Safari-537.51.3/Source/JavaScriptCore

Merged r152818. <rdar://problem/14473897>

11:46 AM Changeset in webkit [152913] by Lucas Forschler
  • 12 edits
    12 copies in tags/Safari-537.51.3

Merged r152813. <rdar://problem/14473897>

11:38 AM Changeset in webkit [152912] by Lucas Forschler
  • 5 edits in tags/Safari-537.51.3/Source

Versioning.

11:37 AM Changeset in webkit [152911] by hyatt@apple.com
  • 14 edits
    50 adds in trunk

OSX: ePub: Unable to select text in vertical Japanese book
https://bugs.webkit.org/show_bug.cgi?id=118864
<rdar://problem/14109351>

Reviewed by Dan Bernstein and Sam Weinig.

Source/WebCore:

This patch fixes all of the various writing-mode and pagination combinations
so that the columns are painted in the correct location. The code that sets up
the initial painting translation offset in the block direction and that advances
that offset has been pulled into two helper functions, initialBlockOffsetForPainting
and blockDeltaForPaintingNextColumn, and that code is now shared by the four call
sites that need it (painting and hit testing in RenderBlock and painting and hit testing
in RenderLayer).

This patch also backs out the maximumScrollPosition change, since it only occurred because
of incorrect sizing of the RenderView, and this sizing issue has now been corrected by
ensuring that computeLogicalHeight() always makes sure you are the size of the viewport
and does not shrink you to the column height.

There was also a race condition that caused pagination to be incorrect if layout occurred
before the html/body renderer that set the writing-mode were available. When this happened,
the writing mode got propagated up to the view, but the column styles didn't get
adjusted to compensate for the writing mode change.

Added tests for every pagination and writing-mode combination in fast/multicol/pagination.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::styleForDocument):
(WebCore::StyleResolver::adjustRenderStyle):
Move setStylesForPaginationMode into RenderStyle and make it a member function. This is
necessary so that the style can be adjusted dynamically to fix the race condition mentioned
above.

  • page/FrameView.cpp:

(WebCore::FrameView::maximumScrollPosition):
Back out this change since the symptom it was fixing only occurred because the logical
height of the view was being set incorrectly.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::checkForPaginationLogicalHeightChange):
Patch the column code that sets up the initial page height to use the pagination API's
page height rather than the viewport logical height. This allows the view to still match
the viewport in dimensions rather than being incorrectly sized to the column height.

(WebCore::RenderBlock::initialBlockOffsetForPainting):
(WebCore::RenderBlock::blockDeltaForPaintingNextColumn):
Two new helper functions used to set up the block direction paint/hit testing translation.
The major bug fix that occurred in this code is that the old block axis code didn't handle
reversal correctly and it also used physical coordinates to try to determine the translation
offset, when you really need to use logical coordinates in the original writing mode coordinate
system to determine the offset.

(WebCore::RenderBlock::paintColumnContents):
Patched to call the new helper functions.

(WebCore::ColumnRectIterator::ColumnRectIterator):
(WebCore::ColumnRectIterator::adjust):
(WebCore::ColumnRectIterator::update):
Patched to call the new helper functions.

  • rendering/RenderBlock.h:

Add the two new helper functions to the RenderBlock header.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::styleDidChange):
If the writing mode of the html/body propagates to the viewport and changes its writing mode,
also change our column styles to match if we're in paginated mode.

(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
Call the new pageOrViewLogicalHeight function on RenderView instead of
RenderBox::viewLogicalHeightForPercentages (which is now removed).

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintChildLayerIntoColumns):
(WebCore::RenderLayer::hitTestChildLayerColumns):
Patched to use the two new helper functions for block direction paint offset setup and
advancement.

  • rendering/RenderView.cpp:

(WebCore::RenderView::pageOrViewLogicalHeight):
New helper function that does what viewLogicalHeightForPercentages used to do but also
handles returning the page length for block axis column progression. Again, this is to
allow the view to retain its correct size (matching the viewport).

(WebCore::RenderView::viewLogicalHeight):
Back out the code that made the view grow or shrink to the size of the Pagination API page
length when the progression was block axis. This was the source of most of the scroll origin
and scrolling issues.

  • rendering/RenderView.h:

Add the new pageOrViewLogicalHeight() function.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::setColumnStylesFromPaginationMode):
This is the old StyleResolver function for setting up the column styles. It's in RenderStyle
now so that it can be called at any time to change a style rather than only at style resolution
time.

  • rendering/style/RenderStyle.h:

Declaration of the setColumnStylesFromPaginationMode function.

LayoutTests:

  • fast/multicol/pagination: Added.
  • fast/multicol/pagination/BottomToTop-bt.html: Added.
  • fast/multicol/pagination/BottomToTop-lr.html: Added.
  • fast/multicol/pagination/BottomToTop-rl.html: Added.
  • fast/multicol/pagination/BottomToTop-tb.html: Added.
  • fast/multicol/pagination/LeftToRight-bt.html: Added.
  • fast/multicol/pagination/LeftToRight-lr.html: Added.
  • fast/multicol/pagination/LeftToRight-rl.html: Added.
  • fast/multicol/pagination/LeftToRight-tb.html: Added.
  • fast/multicol/pagination/RightToLeft-bt.html: Added.
  • fast/multicol/pagination/RightToLeft-lr.html: Added.
  • fast/multicol/pagination/RightToLeft-rl.html: Added.
  • fast/multicol/pagination/RightToLeft-tb.html: Added.
  • fast/multicol/pagination/TopToBottom-bt.html: Added.
  • fast/multicol/pagination/TopToBottom-lr.html: Added.
  • fast/multicol/pagination/TopToBottom-rl.html: Added.
  • fast/multicol/pagination/TopToBottom-tb.html: Added.
  • platform/mac/fast/multicol/pagination: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.png: Added.
  • platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.txt: Added.
  • platform/mac/fast/multicol/shrink-to-column-height-for-pagination-expected.png:
  • platform/mac/fast/multicol/shrink-to-column-height-for-pagination-expected.txt:
11:31 AM Changeset in webkit [152910] by Lucas Forschler
  • 1 copy in tags/Safari-537.51.3

New Tag.

11:14 AM Changeset in webkit [152909] by fpizlo@apple.com
  • 13 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Structure should be able to tell you if it's valid to load at a given offset from any object with that structure
https://bugs.webkit.org/show_bug.cgi?id=118878

Reviewed by Oliver Hunt.

  • Change Structure::isValidOffset() to actually answer the question "If I attempted to load from an object of this structure, at this offset, would I commit suicide or would I get back some kind of value?"


  • Change StorageAccessData::offset to use a PropertyOffset. It should have been that way from the start.


  • Fix PutStructure so that it sets haveStructures in all of the cases that it should.


  • Make GetByOffset also reference the base object in addition to the butterfly.


The future use of this power will be to answer questions like "If I hoisted this
GetByOffset or PutByOffset to this point, would it cause crashes, or would it be
fine?"

I don't currently plan to use this power to perform validation, since the CSE has
the power to eliminate CheckStructure's that the CFA wouldn't be smart enough to
remove - both in the case of StructureSets where size >= 2 and in the case of
CheckStructures that match across PutStructures. At first I tried to write a
validator that was aware of this, but the validation code got way too complicated
and I started having nightmares of spurious assertion bugs being filed against me.

This also changes some of the code for how we hash FunctionExecutable's for debug
dumps, since that code still had some thread-safety issues. Basically, the
concurrent JIT needs to use the CodeBlock's precomputed hash and never call anything
that could transitively try to compute the hash from the source code. The source
code is a string that may be lazily computed, and that involves all manner of thread
unsafe things.

  • bytecode/CodeOrigin.cpp:

(JSC::InlineCallFrame::hash):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::handlePutByOffset):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCFAPhase.cpp:

(JSC::DFG::CFAPhase::performBlockCFA):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.h:

(StorageAccessData):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToGetByOffset):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compilePutByOffset):

  • runtime/FunctionExecutableDump.cpp:

(JSC::FunctionExecutableDump::dump):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::isValidOffset):

10:52 AM Changeset in webkit [152908] by commit-queue@webkit.org
  • 9 edits in trunk/Source

[Curl] Http response code 401 (Authentication required) is not handled.
https://bugs.webkit.org/show_bug.cgi?id=118849

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-07-19
Reviewed by Brent Fulgham.

The current Curl implementation does not handle a 401 response.
When receiving http code 401, we need to give a notification that authorization is required, by calling the appropriate notification method.
This gives a WebKit client the possibility to present a password dialog to the user.
In response to this, we should provide Curl with the given username and password, so another request can be sent with the given credentials.

Source/WebCore:

  • platform/network/ResourceHandle.h:

Added method to check if credential storage should be used.

  • platform/network/ResourceHandleInternal.h:

Added member to keep track of number of authentication failures.

(WebCore::ResourceHandleInternal::ResourceHandleInternal):

  • platform/network/curl/ResourceHandleCurl.cpp:

(WebCore::ResourceHandle::shouldUseCredentialStorage):

Added method to check if credential storage should be used.

(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):

Implement method; notify client when authentication is required.

(WebCore::ResourceHandle::receivedCredential):

Implement method; provide Curl with password and username when available.

(WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):

Implement method; reset Curl username and password.

(WebCore::ResourceHandle::receivedCancellation):

Implement method; notify client that authorization has been cancelled.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::isHttpAuthentication):

Added function to check if http code is an 'Authorization required' code.

(WebCore::getProtectionSpace):

Added function to initialize a protection space object from a Curl handle and a response object.

(WebCore::headerCallback):

Notify client when authorization is required.

(WebCore::ResourceHandleManager::applyAuthenticationToRequest):

Added method to set Curl username and password.

(WebCore::ResourceHandleManager::initializeHandle):

Use method to set Curl username and password.

  • platform/network/curl/ResourceHandleManager.h:

Added method to set Curl username and password.

Source/WebKit/win:

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):

Implement empty method; use the same implementation as the CFNetwork version does,
notify delegate when authorization is required.

  • WebURLAuthenticationChallengeSenderCurl.cpp:

(WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge):

Implement empty method; use the same implementation as the CFNetwork version does.

(WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge):

Implement empty method; use the same implementation as the CFNetwork version does.

(WebURLAuthenticationChallengeSender::useCredential):

Implement empty method; use the same implementation as the CFNetwork version does.

10:47 AM Changeset in webkit [152907] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Hover doesn't work for block elements inside a href element
https://bugs.webkit.org/show_bug.cgi?id=118907

Patch by Radu Stavila <stavila@adobe.com> on 2013-07-19
Reviewed by David Hyatt.

Source/WebCore:

Added test for hovering block elements inside a href element.

Test: fast/css/hover-display-block.html

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::hoverAncestor):

LayoutTests:

Don't skip all anonymous objects when searching for the hover ancestor, only the ones
directly flowed into a region.

  • fast/css/hover-display-block-expected.txt: Added.
  • fast/css/hover-display-block.html: Added.
10:46 AM Changeset in webkit [152906] by zoltan@webkit.org
  • 5 edits in trunk

[CSS Shapes] Clear overflowing line's segments in pushShapeContentOverflowBelowTheContentBox
https://bugs.webkit.org/show_bug.cgi?id=118002

Reviewed by David Hyatt.

When the last line in the shape overlaps with the shape bottom boundaries we need to clear the computed segments. (We need to compute
the segments anyway, since shape-outside's code uses the same code path to determine its segments and the line containing is not a
requirement in that case.) Rather then doing the job in RenderBlock::LineBreaker::nextLineBreak I moved the functionality to its correct
place to pushShapeContentOverflowBelowTheContentBox. Now all the overflow related functionality is located in one function. I fixed the
corresponding layout test.

Source/WebCore:

Tests: I modified shape-inside-overflow.html.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::pushShapeContentOverflowBelowTheContentBox): Remove segments if line overlaps with the shape's boundaries.
(WebCore::RenderBlock::LineBreaker::nextLineBreak): Move segments clear logic to pushShapeContentOverflowBelowContentBox.

LayoutTests:

  • fast/shapes/shape-inside/shape-inside-overflow-expected.html:
  • fast/shapes/shape-inside/shape-inside-overflow.html:
10:43 AM Changeset in webkit [152905] by ggaren@apple.com
  • 2 edits in trunk/Source/WebCore

TrailingObjects shouldn't shrink vector capacity in a loop
https://bugs.webkit.org/show_bug.cgi?id=118322

Reviewed by Darin Adler.

This seems to take about 3% off the profile of loading a large text file.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::TrailingObjects::clear): clear() has the built-in side effect
of throwing away existing capacity. Use shrink(0) to indicate that we
want to keep our existing capacity.

10:40 AM Changeset in webkit [152904] by zoltan@webkit.org
  • 7 edits in trunk/LayoutTests

[CSS Shapes][CSS Regions] Modify existing tests to test overflow also when padding is applied on the container
https://bugs.webkit.org/show_bug.cgi?id=117881

Reviewed by David Hyatt.

Currently, we don't have tests which test the overflow behavior when there is padding applied on the container.
I modified the existing tests to cover these cases as well and increase our test coverage.

  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html:
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html:
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes-expected.html:
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html:
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes-expected.html:
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html:
10:33 AM Changeset in webkit [152903] by Martin Robinson
  • 3 edits in trunk/Tools

Add a couple people to the MathML watchlist
https://bugs.webkit.org/show_bug.cgi?id=118909

Reviewed by Andreas Kling.

Add a couple people to the MathML watchlist and add Kalyan's other
email address to fix style checker warnings about the watchlist
contents.

  • Scripts/webkitpy/common/config/contributors.json: Add Frédéric to the

list of contributors and add Kalyan's second email address.

  • Scripts/webkitpy/common/config/watchlist: Add myself and Frédéric to the MathML

watchlist.

9:13 AM Changeset in webkit [152902] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Update test expectations for MathML after r152840.
https://bugs.webkit.org/show_bug.cgi?id=118053

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-19
Reviewed by Chris Fleizach.

  • TestExpectations: unskip mspace tests
  • platform/mac/TestExpectations: ImageOnlyFailure for mspace-units
8:21 AM Changeset in webkit [152901] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk/LayoutTests

[GTK] Unreviewed gardening. Update expectations after r152793, r152777 and r152872
https://bugs.webkit.org/show_bug.cgi?id=118906

Unreviewed GTK gardening.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-19

  • platform/gtk/TestExpectations: Mark svg/animations/svgenum-animation-6.html as flaky, and

mathml/presentation/bug95404.html, introduced in r152777, as ImageOnlyFailure.

  • platform/gtk/editing/pasteboard/emacs-cntl-y-001-expected.txt: New baseline after r152872.
  • platform/gtk/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt: Ditto.
  • platform/gtk/fast/dom/Range/getClientRects-expected.txt: Ditto.
  • platform/gtk/fast/js/function-length-expected.txt: Ditto.
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-expected.txt: Added after r152872.
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt: Added after r152872.
  • platform/gtk/tables/mozilla/marvin/backgr_index-expected.txt: New baseline after r152793.
6:37 AM Changeset in webkit [152900] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt][WK2] More unreviewed cleanup for pixel tester bot.

  • platform/qt-5.0-wk2/TestExpectations:
6:27 AM Changeset in webkit [152899] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed cleanup for pixel tester bot.

  • platform/qt-5.0-wk2/TestExpectations:
5:46 AM Changeset in webkit [152898] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Merge decamelizations fix ups in the GObject DOM bindings code generator
https://bugs.webkit.org/show_bug.cgi?id=117543

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2013-07-19
Reviewed by Carlos Garcia Campos.

Ensure that all the code that calls to decamelize() applies the same fix ups

Now all functions that need to decamelize a string should simply call
to decamelize(). This function calls to FixUpDecamelize to apply some
fix ups.

  • bindings/scripts/CodeGeneratorGObject.pm:

(decamelize): decamelizes a string and applies fix ups
(FixUpDecamelize): applies a series of fix ups to a decamelized string
(GetParentGObjType): moved fix ups to FixUpDecamelize()
(GenerateProperties): simply call to decamelize
(GenerateHeader): simply call to decamelize
(GetGReturnMacro): simply call to decamelize
(GenerateFunction): simply call to decamelize
(GenerateCFile): simply call to decamelize
(GenerateEventTargetIface): simply call to decamelize

5:18 AM Changeset in webkit [152897] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Fix regression in DumpRenderTree introduced in r152782 by checking if uri is valid
https://bugs.webkit.org/show_bug.cgi?id=118895

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-19
Reviewed by Philippe Normand.

In r152782 an uri is used to create an string representation without checking first if it
is valid. That fails later when the string is used to check for existing redirections. This
patch ensures that the uri is valid before using it.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(willSendRequestCallback): Ensure an uri is valid before using it.

5:13 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:11 AM Changeset in webkit [152896] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r152340 - [WK2] Invalidate FontCache before purging MemoryCache upon WebProcess termination/closure
https://bugs.webkit.org/show_bug.cgi?id=118280

Reviewed by Darin Adler.

Invalidate the FontCache before disabling and purging the MemoryCache in WebProcess::didClose
and WebProcess::terminate. This frees up additional references to objects that were held
by the FontCache, reducing the amount of 'LEAK: *' output when exiting MiniBrowser or
WebKitTestRunner in debug builds.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::terminate):
(WebKit::WebProcess::didClose):

5:09 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:07 AM Changeset in webkit [152895] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r151674 - [GTK][GStreamer] Fullscreen option in video element context menu not working
https://bugs.webkit.org/show_bug.cgi?id=105191

.:

Fullscreen with native controls is outdated and even broken in
[GTK][WK2], so they are deactivated for now.

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-06-18
Reviewed by Philippe Normand.

  • Source/autotools/SetupAutoconfHeader.m4: Removed the use of

fullscreen native media controls.

4:52 AM Changeset in webkit [152894] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed.

Fix an assertion failure which causes debug bots to fail.

  • platform/network/NetworkStateNotifier.cpp:

(WebCore::NetworkStateNotifier::addNetworkStateChangeListener):

3:31 AM Changeset in webkit [152893] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK] media/video-seek-multiple.html is failing
https://bugs.webkit.org/show_bug.cgi?id=117580

Patch by Miguel Gomez <magomez@igalia.com> on 2013-07-19
Reviewed by Philippe Normand.

Source/WebCore:

When receiving several seek calls in a row, ensure that the final position
is the one requested in the last call received.

Already covered in test media/video-seek-multiple.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::seek):

LayoutTests:

Change expectation for media/video-seek-multiple.html test

  • platform/gtk/TestExpectations:
3:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:26 AM Changeset in webkit [152892] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r149543 - [GStreamer] GStreamer log crashes in MediaPlayerPrivateGStreamerBase because of uninitialized category
https://bugs.webkit.org/show_bug.cgi?id=115575

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-05-03
Reviewed by Philippe Normand.

No new tests needed.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

Using extern debug category.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

Declaring debug category as not static.

3:21 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:19 AM Changeset in webkit [152891] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.0

Merge r148131 - Clicking on the volume slider of HTML5 elements is pausing sometimes
https://bugs.webkit.org/show_bug.cgi?id=112548

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-04-10
Reviewed by Eric Carlson.

Source/WebCore:

Test: media/click-volume-bar-not-pausing.html

  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
Calling the setDefaultHandled() method on the event prevents it
from being incorrectly propagated from the volume button up to the
MediaDocument.

LayoutTests:

Added test.

  • media/click-volume-bar-not-pausing-expected.txt: Added.
  • media/click-volume-bar-not-pausing.html: Added.
3:13 AM Changeset in webkit [152890] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r152712 - [GTK] Remove compile warnings about GTK+ API deprecated after 3.6
https://bugs.webkit.org/show_bug.cgi?id=118237

Reviewed by Philippe Normand.

We depend on GTK+3.6 so we are not interested in compile warnings
about deprecated API after 3.6

  • Source/autotools/SetupAutoconfHeader.m4: Define

GDK_VERSION_MIN_REQUIRED in config.h.

2:10 AM Changeset in webkit [152889] by kangil.han@samsung.com
  • 9 edits in trunk/Source/WebCore

Use explicit HTMLFrameElementBase cast and introduce toHTMLFrameElementBase
https://bugs.webkit.org/show_bug.cgi?id=118873

Reviewed by Ryosuke Niwa.

It should be HTMLFrameElementBase that embraces both HTMLFrameElement and HTMLIFrameElement.
This also makes correct toFooElement possible.
Next, to avoid direct use of static_cast, this patch introduces toHTMLFrameElementBase for code cleanup.

  • editing/FrameSelection.cpp:

(WebCore::scanForForm):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::didNotifySubtreeInsertions):

  • html/HTMLFrameElementBase.h:

(WebCore::toHTMLFrameElementBase):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadSubframe):

  • page/EventHandler.cpp:

(WebCore::targetIsFrame):

  • page/FrameView.cpp:

(WebCore::FrameView::init):

  • rendering/RenderFrameBase.cpp:

(WebCore::RenderFrameBase::layoutWithFlattening):

  • rendering/RenderLayer.cpp:

(WebCore::frameElementAndViewPermitScroll):
(WebCore::RenderLayer::scrollRectToVisible):

1:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
1:36 AM Changeset in webkit [152888] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r152552 - Fix build against GTK+ 2.0
https://bugs.webkit.org/show_bug.cgi?id=117895

Patch by Dominique Leuenberger <dimstar@opensuse.org> on 2013-07-10
Reviewed by Martin Robinson.

GTK2 build fails for undefined GDK_IS_X11_DISPLAY
GTK 2.0 does define GDK_WINDOWING_X11,but GDK_IS_X11_DISPLAY is not
present in GTK+ 2.0. A dummy defines is sufficient, as GTK 2.0 is not
that multiple backend aware anyway...

  • platform/gtk/GtkVersioning.h: Define GDK_IS_X11_DISPLAY for GTK+ 2.0 and compatibility for gtk_widget_get_preferred_size()
  • plugins/gtk/gtk2xtbin.c: Include config.h
1:22 AM Changeset in webkit [152887] by zarvai@inf.u-szeged.hu
  • 5 edits
    1 copy in trunk/LayoutTests

[Qt] Unreviewed gardening. Rebase failing tests.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-19

  • platform/qt-5.0-wk2/tables/mozilla/marvin/backgr_index-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/marvin/backgr_index-expected.txt: Copied from LayoutTests/platform/qt/tables/mozilla/marvin/backgr_index-expected.txt.
  • platform/qt/fast/lists/inlineBoxWrapperNullCheck-expected.txt:
  • platform/qt/http/tests/security/contentSecurityPolicy/object-src-none-blocked-expected.txt:
  • platform/qt/tables/mozilla/marvin/backgr_index-expected.txt:

Jul 18, 2013:

11:53 PM Changeset in webkit [152886] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Bindings generation tests are failing
https://bugs.webkit.org/show_bug.cgi?id=118877

Reviewed by Kentaro Hara.

I inadvertently removed the wrong part of the if statement
in r152845, causing hasAttribute() to be used unconditionally
for reflected boolean attributes instead of fastHasAttribute().
This patch fixes the issue.

No new tests, covered by bindings tests.

  • bindings/scripts/CodeGenerator.pm:

(GetterExpression):

10:07 PM Changeset in webkit [152885] by kseo@webkit.org
  • 16 edits in trunk/Source/WebCore

WorkerGlobalScope should support onoffline/ononline event handlers
https://bugs.webkit.org/show_bug.cgi?id=118832

Reviewed by Alexey Proskuryakov.

HTML5 spec says that WorkerGlobalScope should support
onoffline/ononline event handlers as stated in
http://www.whatwg.org/specs/web-apps/current-work/multipage/offline.html#event-offline

Modified NetworkStateNotifier to support multiple callbacks and added a
callback to dispatch offline and online events to WorkerGlobalScope
when network state is changed.

No new test because the current test infrastructure does not provide a
mock network state notifier.

  • page/Page.cpp:

(WebCore::networkStateChanged):
Change the function to take an additional argument, isOnLine so that we
can remove a call to NetworkStateNotifier::onLine().
(WebCore::Page::Page):
Use NetworkStateNotifier::addNetworkStateChangeListener which
allows us to add multiple callbacks.

  • platform/network/NetworkStateNotifier.cpp:

(WebCore::NetworkStateNotifier::addNetworkStateChangeListener):
Replace NetworkStateNotifier::setNetworkStateChangedFunction with
NetworkStateNotifier::addNetworkStateChangeListener.
(WebCore::NetworkStateNotifier::notifyNetworkStateChange):
A helper method to notify all registered network state change
callbacks.

  • platform/network/NetworkStateNotifier.h:

(WebCore::NetworkStateNotifier::NetworkStateNotifier):

  • platform/network/blackberry/NetworkStateNotifierBlackBerry.cpp:

(WebCore::NetworkStateNotifier::NetworkStateNotifier):
(WebCore::NetworkStateNotifier::networkStateChange):

  • platform/network/efl/NetworkStateNotifierEfl.cpp:

(WebCore::NetworkStateNotifier::networkInterfaceChanged):
(WebCore::NetworkStateNotifier::NetworkStateNotifier):

  • platform/network/mac/NetworkStateNotifierMac.cpp:

(WebCore::NetworkStateNotifier::networkStateChangeTimerFired):
(WebCore::NetworkStateNotifier::NetworkStateNotifier):

  • platform/network/qt/NetworkStateNotifierQt.cpp:

(WebCore::NetworkStateNotifier::updateState):
(WebCore::NetworkStateNotifier::NetworkStateNotifier):

  • platform/network/win/NetworkStateNotifierWin.cpp:

(WebCore::NetworkStateNotifier::addressChanged):
(WebCore::NetworkStateNotifier::NetworkStateNotifier):
Replace m_networkStateChangedFunction() with notifyNetworkStateChange().

  • workers/Worker.cpp:

(WebCore::networkStateChanged):
Notify network state change by iterating all Workers.
(WebCore::Worker::Worker):
Initialize allWorkers and add networkStateChanged to
NetworkStateNotifier in first invocation. Add this Worker to
allWorkers.
(WebCore::Worker::~Worker):
Remove this Worker from allWorkers.
(WebCore::Worker::notifyNetworkStateChange):

  • workers/Worker.h:
  • workers/WorkerGlobalScope.h:

Add onoffline and ononline event handlers.

  • workers/WorkerGlobalScope.idl:

Add onoffline and ononline event handlers

  • workers/WorkerGlobalScopeProxy.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::NotifyNetworkStateChangeTask::create):
(WebCore::NotifyNetworkStateChangeTask::NotifyNetworkStateChangeTask):
(WebCore::NotifyNetworkStateChangeTask::performTask):
A subclass of ScriptExecutionContext::Task to dispatch offline and
online events to WorkerGlobalScope.
(WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
Notify network state change using ScriptExecutionContext::postTask to
dispatch events across threads.

  • workers/WorkerMessagingProxy.h:
8:58 PM Changeset in webkit [152884] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix after r152876.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::processNewAndRemovedTextTracks):

8:34 PM Changeset in webkit [152883] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Fix the build after r152881

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::lower):

8:30 PM Changeset in webkit [152882] by akling@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

CodeBlock DFG entry list isn't getting shrunk-to-fit after linking.
<http://webkit.org/b/118875>
<rdar://problem/14488577>

Reviewed by Geoffrey Garen.

Move the CodeBlock::shrinkToFit() call out of JITCompiler::link() and to the call sites
so SpeculativeJIT::linkOSREntries() can fill in CodeBlock::m_dfgData->osrEntry first.

886 kB progression on <http://twitter.com/awesomekling>

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):

8:24 PM Changeset in webkit [152881] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Little cleaning of StringImpl::lower() and StringImpl::upper() for ARM
https://bugs.webkit.org/show_bug.cgi?id=118831

Reviewed by Gavin Barraclough.

Clean lower() and upper() before trying some optimizations:
-Prefix the code with the empty() case. Otherwise, each descending loop starts with

a check for length == 0.

-Change ored to a 32 bits registers. ARM only has 32 bits registers and access to full word.

To keep the value a UChar, the compiler is adding a bunch of useless value & 0xffff in the loops.

-Change the pointer based loops for index based loops. The compiler does a mighty job at optimizing

those for each architecture. No need to make the code more complex.

-Don't perform the check for int32 unless we need to. The only code limited to int is Unicode::toLower.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::lower):
(WTF::StringImpl::upper):

8:04 PM Changeset in webkit [152880] by fpizlo@apple.com
  • 3 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: AbstractInterpreter should explicitly ask AbstractState to create new AbstractValues for newly born nodes
https://bugs.webkit.org/show_bug.cgi?id=118880

Reviewed by Sam Weinig.

It should be possible to have an AbstractState that is backed by a HashMap. But to
do this, the AbstractInterpreter should explicitly ask for new nodes to be added to
the map, since otherwise the idiom of getting a reference to the AbstractValue
returned by forNode() would cause really subtle memory corruption bugs.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGInPlaceAbstractState.h:

(JSC::DFG::InPlaceAbstractState::createValueForNode):
(InPlaceAbstractState):

7:19 PM Changeset in webkit [152879] by fpizlo@apple.com
  • 11 edits
    5 adds
    2 deletes in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Decouple the way that CFA stores its state from the way it does abstract interpretation
https://bugs.webkit.org/show_bug.cgi?id=118835

Reviewed by Oliver Hunt.

This separates AbstractState into two things:

  • InPlaceAbstractState, which can tell you the abstract state of anything you might care about, and uses the old AbstractState's algorithms and data structures for doing so.


  • AbstractInterpreter<AbstractStateType>, which can execute a DFG::Node* with respect to an AbstractStateType. Currently we always use AbstractStateType = InPlaceAbstractState. But we could drop in an other class that supports basic primitives like forNode() and variables().


This is important because:

  • We want to hoist things out of loops.
  • We don't know what things rely on what type checks.
  • We only want to hoist type checks out of loops if they aren't clobbered.
  • We may want to still hoist things that depended on those type checks, if it's safe to do those things based on the CFA state at the tail of the loop pre-header.
  • We don't want things to rely on their type checks by way of a token, because that's just weird.

So, we want to be able to have a special form of the CFA that can
incrementally update a basic block's state-at-tail, and we want to be able to
do this for multiple blocks simultaneously. This requires *not* storing the
per-node state in the nodes themselves, but instead using the at-tail HashMap
directly.

Hence we need to have a way of making the abstract interpreter (i.e.
AbstractState::execute) polymorphic with respect to state representation. Put
another way, we need to separate the way that abstract state is represented
from the way DFG IR is abstractly interpreted.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractInterpreter.h: Added.

(DFG):
(AbstractInterpreter):
(JSC::DFG::AbstractInterpreter::forNode):
(JSC::DFG::AbstractInterpreter::variables):
(JSC::DFG::AbstractInterpreter::needsTypeCheck):
(JSC::DFG::AbstractInterpreter::filterEdgeByUse):
(JSC::DFG::AbstractInterpreter::filter):
(JSC::DFG::AbstractInterpreter::filterArrayModes):
(JSC::DFG::AbstractInterpreter::filterByValue):
(JSC::DFG::AbstractInterpreter::trySetConstant):
(JSC::DFG::AbstractInterpreter::filterByType):

  • dfg/DFGAbstractInterpreterInlines.h: Added.

(DFG):
(JSC::DFG::::AbstractInterpreter):
(JSC::DFG::::~AbstractInterpreter):
(JSC::DFG::::booleanResult):
(JSC::DFG::::startExecuting):
(JSC::DFG::::executeEdges):
(JSC::DFG::::verifyEdge):
(JSC::DFG::::verifyEdges):
(JSC::DFG::::executeEffects):
(JSC::DFG::::execute):
(JSC::DFG::::clobberWorld):
(JSC::DFG::::clobberCapturedVars):
(JSC::DFG::::clobberStructures):
(JSC::DFG::::dump):
(JSC::DFG::::filter):
(JSC::DFG::::filterArrayModes):
(JSC::DFG::::filterByValue):

  • dfg/DFGAbstractState.cpp: Removed.
  • dfg/DFGAbstractState.h: Removed.
  • dfg/DFGArgumentsSimplificationPhase.cpp:
  • dfg/DFGCFAPhase.cpp:

(JSC::DFG::CFAPhase::CFAPhase):
(JSC::DFG::CFAPhase::performBlockCFA):
(CFAPhase):

  • dfg/DFGCFGSimplificationPhase.cpp:
  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::ConstantFoldingPhase):
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(ConstantFoldingPhase):

  • dfg/DFGInPlaceAbstractState.cpp: Added.

(DFG):
(JSC::DFG::InPlaceAbstractState::InPlaceAbstractState):
(JSC::DFG::InPlaceAbstractState::~InPlaceAbstractState):
(JSC::DFG::InPlaceAbstractState::beginBasicBlock):
(JSC::DFG::setLiveValues):
(JSC::DFG::InPlaceAbstractState::initialize):
(JSC::DFG::InPlaceAbstractState::endBasicBlock):
(JSC::DFG::InPlaceAbstractState::reset):
(JSC::DFG::InPlaceAbstractState::mergeStateAtTail):
(JSC::DFG::InPlaceAbstractState::merge):
(JSC::DFG::InPlaceAbstractState::mergeToSuccessors):
(JSC::DFG::InPlaceAbstractState::mergeVariableBetweenBlocks):

  • dfg/DFGInPlaceAbstractState.h: Added.

(DFG):
(InPlaceAbstractState):
(JSC::DFG::InPlaceAbstractState::forNode):
(JSC::DFG::InPlaceAbstractState::variables):
(JSC::DFG::InPlaceAbstractState::block):
(JSC::DFG::InPlaceAbstractState::didClobber):
(JSC::DFG::InPlaceAbstractState::isValid):
(JSC::DFG::InPlaceAbstractState::setDidClobber):
(JSC::DFG::InPlaceAbstractState::setIsValid):
(JSC::DFG::InPlaceAbstractState::setBranchDirection):
(JSC::DFG::InPlaceAbstractState::setFoundConstants):
(JSC::DFG::InPlaceAbstractState::haveStructures):
(JSC::DFG::InPlaceAbstractState::setHaveStructures):

  • dfg/DFGMergeMode.h: Added.

(DFG):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::backwardTypeCheck):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::compileToStringOnCell):
(JSC::DFG::SpeculativeJIT::speculateStringIdentAndLoadStorage):
(JSC::DFG::SpeculativeJIT::speculateStringObject):
(JSC::DFG::SpeculativeJIT::speculateStringOrStringObject):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::needsTypeCheck):
(SpeculativeJIT):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):

  • ftl/FTLLowerDFGToLLVM.cpp:

(FTL):
(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::appendTypeCheck):
(JSC::FTL::LowerDFGToLLVM::speculate):
(JSC::FTL::LowerDFGToLLVM::speculateNumber):
(JSC::FTL::LowerDFGToLLVM::speculateRealNumber):
(LowerDFGToLLVM):

7:12 PM Changeset in webkit [152878] by commit-queue@webkit.org
  • 20 edits
    2 adds in trunk/Source/WebKit2

[WK2] Share Qt port's codes to find zoomable area with CoordinatedGraphics.
https://bugs.webkit.org/show_bug.cgi?id=118585

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2013-07-18
Reviewed by Anders Carlsson.

The function to find zoomable area is needed in order to implement the
feature to scale for double-tap gesture. The WK2 EFL and NIX port want
to use that function, so extract the code from the Qt port, make it
usable in the CoordinatedGraphics and add API and callback.

  • CMakeLists.txt:
  • Target.pri:
  • UIProcess/API/C/CoordinatedGraphics/WKView.cpp:

(WKViewFindZoomableAreaForRect):

  • UIProcess/API/C/CoordinatedGraphics/WKView.h:
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::didFindZoomableArea):

  • UIProcess/API/efl/EwkView.h:
  • UIProcess/CoordinatedGraphics/WebPageProxyCoordinatedGraphics.cpp: Added.

(WebKit::WebPageProxy::findZoomableAreaForPoint):
(WebKit::WebPageProxy::didFindZoomableArea):

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::didFindZoomableArea):
(WebKit::WebView::findZoomableAreaForPoint):

  • UIProcess/CoordinatedGraphics/WebView.h:
  • UIProcess/CoordinatedGraphics/WebViewClient.cpp:

(WebKit::WebViewClient::didFindZoomableArea):

  • UIProcess/CoordinatedGraphics/WebViewClient.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::didFindZoomableArea):
(WebKit::ViewClientEfl::ViewClientEfl):

  • UIProcess/efl/ViewClientEfl.h:
  • UIProcess/qt/WebPageProxyQt.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: Added.

(WebKit::WebPage::findZoomableAreaForPoint):

  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
6:32 PM Changeset in webkit [152877] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Flash Player: deny file-read-data /Library/Application Support/Macromedia/FlashAuthor.cfg
https://bugs.webkit.org/show_bug.cgi?id=118874
<rdar://problem/14271327>

Patch by Simon Cooper <scooper@apple.com> on 2013-07-18
Reviewed by Alexey Proskuryakov.

Silently deny access to FlashAuthor.cfg. This location contains
files containing lists of paths that Flash Player will
"allow" access to (without asking the user). Since the plugin
sandbox won't permit the access to the listed paths it is better
to silently block attempts to read this "whitelist".

  • Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
6:08 PM Changeset in webkit [152876] by Brent Fulgham
  • 7 edits in trunk/Source/WebCore

[Media] Share more code between Mac and Windows implementation files.
https://bugs.webkit.org/show_bug.cgi?id=118801

Reviewed by Eric Carlson.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::clearTextTracks): Move
implementation from ObjC file to parent file.
(WebCore::MediaPlayerPrivateAVFoundation::processNewAndRemovedTextTracks):
Ditto.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:

Remove duplicate implementation.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

Ditto.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:

Ditto.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:

Ditto.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

Ditto.

6:06 PM Changeset in webkit [152875] by commit-queue@webkit.org
  • 2 edits
    1 delete in trunk/LayoutTests

Unreviewed, rolling out r152801.
http://trac.webkit.org/changeset/152801
https://bugs.webkit.org/show_bug.cgi?id=118876

Un-rebaseline some plugin tests since r152789 was rolled out
(Requested by rfong on #webkit).

  • platform/win/editing/pasteboard/paste-noplugin-expected.txt: Removed.
  • platform/win/platform/win/plugins/draws-gradient-expected.txt:
5:35 PM Changeset in webkit [152874] by roger_fong@apple.com
  • 4 edits in trunk

Make sure to link against _debug binaries when appropriate.
<rdar://problem/14473010>.

  • win/tools/vsprops/debugsuffix.props:
  • gtest/msvc/gtest-md.vcxproj:
4:58 PM Changeset in webkit [152873] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

Compositing pattern tests fail on Lion WK1 Debug.
https://bugs.webkit.org/show_bug.cgi?id=118870

Unreviewed.

Update Lion expectations after http://trac.webkit.org/changeset/152470

  • platform/mac-lion/TestExpectations:
4:32 PM Changeset in webkit [152872] by fpizlo@apple.com
  • 9 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: DFG shouldn't create CheckStructures for array accesses except if the ArrayMode implies an original array access
https://bugs.webkit.org/show_bug.cgi?id=118867

Reviewed by Mark Hahnenberg.

This allows us to kill off a bunch of code in the parser, in fixup, and to simplify
ArrayProfile.

It also makes it easier to ask any array-using node how to create its type check.

Doing this required fixing a bug in LowLevelInterpreter64, where it was storing into
an array profile, thinking that it was storing into a value profile. Reshuffling the
fields in ArrayProfile revealed this.

  • bytecode/ArrayProfile.cpp:

(JSC::ArrayProfile::computeUpdatedPrediction):
(JSC::ArrayProfile::briefDescriptionWithoutUpdating):

  • bytecode/ArrayProfile.h:

(JSC::ArrayProfile::ArrayProfile):
(ArrayProfile):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::updateAllArrayPredictions):
(JSC::CodeBlock::updateAllPredictions):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::updateAllArrayPredictions):

  • dfg/DFGArrayMode.h:

(ArrayMode):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArrayModeConsideringSlowPath):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(FixupPhase):
(JSC::DFG::FixupPhase::checkArray):
(JSC::DFG::FixupPhase::blessArrayOperation):

  • llint/LowLevelInterpreter64.asm:
4:24 PM Changeset in webkit [152871] by commit-queue@webkit.org
  • 87 edits
    2 copies
    4 adds in trunk

Fixed ASSERTION FAILED: callFrame == vm->topCallFrame in JSC::Interpreter::addStackTraceIfNecessary
https://bugs.webkit.org/show_bug.cgi?id=118498

Patch by Chris Curtis <chris_curtis@apple.com> on 2013-07-18
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • jit/JITStubs.cpp:

(throwExceptionFromOpCall):
Created new throwExceptionFromOpCall that takes in a functor that contains
a function pointer (to create the errorObject) instead of a JSValue. Inside
of throwExceptionFromOpCall the topCallFrame is being rolled back in order
to handle the error throw. By passing the function pointer in, we can defer
the creation of the error object until after topCallFrame has been rolled
back. This allows the error object to be created with the appropriate top
frame.

DEFINE_STUB_FUNCTION(void*, stack_check):
DEFINE_STUB_FUNCTION(void*, op_call_arityCheck):
DEFINE_STUB_FUNCTION(void*, op_construct_arityCheck):
DEFINE_STUB_FUNCTION(EncodedJSValue, op_call_NotJSFunction):
DEFINE_STUB_FUNCTION(EncodedJSValue, op_construct_NotJSConstruct):

(JSC::ErrorFunctor::~ErrorFunctor):
(JSC::ErrorWithExecFunctor::ErrorWithExecFunctor):
(JSC::ErrorWithExecFunctor::operator()):
(JSC::ErrorWithExecAndCalleeFunctor::ErrorWithExecAndCalleeFunctor):
(JSC::ErrorWithExecAndCalleeFunctor::operator()):
(JSC::ErrorWithExceptionFunctor::ErrorWithExceptionFunctor):
(JSC::ErrorWithExceptionFunctor::operator()):
(JSC::throwExceptionFromOpCall):

In order to eliminate the need to duplicate code, an error functor was
created for the 3 different throwExceptionFromOpCall handles.

  1. The exception needs to be created, and the function pointer takes 1

parameter(callFrame->callerFrame()).

  1. The exception needs to be created, and the function pointer takes 2

parameters (callFrame->callerFrame(), callFrame.calleeAsValue()).

  1. The exception is already created. In this case, At the time when

the error functor is called, vm.exception is returned.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/ExceptionHelpers.cpp:

(JSC::errorDescriptionForValue):
(JSC::createError):
(JSC::createInvalidParameterError):
(JSC::createNotAConstructorError):
(JSC::createNotAFunctionError):
(JSC::createNotAnObjectError):

  • runtime/ExceptionHelpers.h:

The function toString() was being used to stringify an object for an exception
message. If the user wrote a toString() for that object, then the system would
continue to evaluate that code. A new helper function was created to prevent
the system to continue execution and exception creation from that execution.

LayoutTests:

New Tests to see if JSC evaluates user code after exception creation

  • fast/js/not-a-constructor-to-string-expected.txt: Added.
  • fast/js/not-a-constructor-to-string.html: Added.
  • fast/js/not-a-function-to-string-expected.txt: Added.
  • fast/js/not-a-function-to-string.html: Added.

Modified test output of the object that was being evaluated at the time of the
error. Only the error message has changed.

  • fast/dom/MutationObserver/mutation-record-constructor-expected.txt:
  • fast/dom/NodeList/nodelist-item-call-as-function-expected.txt:
  • fast/dom/Range/getClientRects-expected.txt:
  • fast/dom/SelectorAPI/dumpNodeList-almost-strict-expected.txt:
  • fast/dom/SelectorAPI/dumpNodeList-expected.txt:
  • fast/dom/call-a-constructor-as-a-function-expected.txt:
  • fast/dom/setPrimitiveValue-exceptions-expected.txt:
  • fast/events/window-onerror-exception-in-attr-expected.txt:
  • fast/forms/select-namedItem-expected.txt:
  • fast/js/arguments-expected.txt:
  • fast/js/array-prototype-properties-expected.txt:
  • fast/js/basic-strict-mode-expected.txt:
  • fast/js/date-toisostring-expected.txt:
  • fast/js/delete-getters-setters-expected.txt:
  • fast/js/dfg-check-structure-elimination-for-non-cell-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-inline-arguments-use-from-all-the-places-broken-expected.txt:
  • fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt:
  • fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt:
  • fast/js/exception-expression-offset-expected.txt:
  • fast/js/exception-for-nonobject-expected.txt:
  • fast/js/exception-thrown-from-new-expected.txt:
  • fast/js/function-bind-expected.txt:
  • fast/js/instance-of-immediates-expected.txt:
  • fast/js/object-prototype-properties-expected.txt:
  • fast/regex/cross-frame-callable-expected.txt:
  • fast/xsl/transform-xhr-doc-expected.txt:
  • http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
  • http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
  • http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
  • http/tests/security/document-all-expected.txt:
  • http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt:
  • http/tests/security/window-named-proto-expected.txt:
  • inspector/console/console-exception-stack-traces-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-15c-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-15c-expected.txt:
  • platform/efl/fast/events/updateLayoutForHitTest-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
  • platform/gtk/css3/selectors3/xhtml/css3-modsel-15c-expected.txt:
  • platform/gtk/css3/selectors3/xml/css3-modsel-15c-expected.txt:
  • platform/gtk/fast/events/updateLayoutForHitTest-expected.txt:
  • platform/gtk/svg/custom/createelement-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
  • platform/mac-wk2/editing/spelling/markers-expected.txt:
  • platform/mac-wk2/plugins/npruntime/object-from-destroyed-plugin-expected.txt: Added.
  • platform/mac-wk2/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt: Added.
  • platform/mac/css3/selectors3/xhtml/css3-modsel-15c-expected.txt:
  • platform/mac/css3/selectors3/xml/css3-modsel-15c-expected.txt:
  • platform/mac/fast/events/updateLayoutForHitTest-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-15c-expected.txt:
  • platform/qt/css3/selectors3/xml/css3-modsel-15c-expected.txt:
  • platform/qt/svg/custom/createelement-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
  • platform/win/fast/dom/call-a-constructor-as-a-function-expected.txt:
  • plugins/npruntime/object-from-destroyed-plugin-expected.txt:
  • plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt:
  • plugins/npruntime/plugin-scriptable-object-invoke-default-expected.txt:
  • sputnik/Conformance/08_Types/8.6_The_Object_Type/8.6.2_Internal_Properties_and_Methods/S8.6.2_A7-expected.txt:
  • sputnik/Conformance/13_Function_Definition/S13_A17_T2-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/S15.1_A1_T1-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/S15.1_A1_T2-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/S15.1_A2_T1-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.2_Object.prototype.toString/S15.2.4.2_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.3_Object.prototype.toLocaleString/S15.2.4.3_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.4_Object.prototype.valueOf/S15.2.4.4_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.5_Object.prototype.hasOwnProperty/S15.2.4.5_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.6_Object.prototype.isPrototypeOf/S15.2.4.6_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.7_Object.prototype.propertyIsEnumerable/S15.2.4.7_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/S15.2.4_A3-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/S15.2.4_A4-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.2_Function.prototype.toString/S15.3.4.2_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/S15.3.4_A5-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.13_String.prototype.slice/S15.5.4.13_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.15_String.prototype.substring/S15.5.4.15_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.17_String.prototype.toLocaleLowerCase/S15.5.4.17_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.7_String.prototype.indexOf/S15.5.4.7_A7-expected.txt:
  • sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.8_String.prototype.lastIndexOf/S15.5.4.8_A7-expected.txt:
  • svg/custom/createelement-expected.txt:
  • svg/custom/use-nested-missing-target-removed-expected.txt:
  • svg/dom/svgpath-out-of-bounds-getPathSeg-expected.txt:
3:17 PM Changeset in webkit [152870] by timothy@apple.com
  • 3 edits
    1 add in trunk/Tools

Add extract-localizable-js-strings and use it for WebInspectorUI.

https://bugs.webkit.org/show_bug.cgi?id=118851

Reviewed by Joseph Pecoraro.

  • Scripts/extract-localizable-js-strings: Added.
  • Scripts/extract-localizable-strings: Drive-by-fix: disable deprecated warnings about "goto".
  • Scripts/update-webkit-localizable-strings: Use extract-localizable-js-strings for

the WebInspectorUI project.

3:12 PM Changeset in webkit [152869] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fixed compile errors for non-Cairo platforms using EGL.
https://bugs.webkit.org/show_bug.cgi?id=118536

Reviewed by Brent Fulgham.

  • platform/graphics/egl/GLContextEGL.cpp: Added #if USE(CAIRO) around cairo.h.

(WebCore::GLContextEGL::~GLContextEGL): Added #if USE(CAIRO) around cairo_device_destroy call.

3:06 PM Changeset in webkit [152868] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

LLInt get_argument_by_val for JSVALUE64 stores into the array profile when it meant to store into the value profile
https://bugs.webkit.org/show_bug.cgi?id=118865

Reviewed by Mark Hahnenberg.

  • llint/LowLevelInterpreter64.asm:
3:00 PM Changeset in webkit [152867] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

New PDFPlugin doesn't support WebKitOmitPDFSupport, acts as if Plug-ins are off
https://bugs.webkit.org/show_bug.cgi?id=118858

Reviewed by Eric Carlson.

Expand the scope of rejecting non video/ or audio/ MIME types when
filling the MIME type cache.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::shouldRejectMIMEType): Added utility function.

2:58 PM Changeset in webkit [152866] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

[wk2] Ensure that the plugin layer is removed completely when the PluginProcess crashes
https://bugs.webkit.org/show_bug.cgi?id=118862

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::PluginView):
Add m_pluginProcessHasCrashed.

(WebKit::PluginView::platformLayer):
Don't return the plugin's layer if it has crashed.

(WebKit::PluginView::pluginProcessCrashed):
Set m_pluginProcessHasCrashed.
Cause a style recalc so that we rebuild the layer tree; our layer won't be included.

  • WebProcess/Plugins/PluginView.h:

Add m_pluginProcessHasCrashed.

2:47 PM Changeset in webkit [152865] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Unreviewed build correction.

2:14 PM Changeset in webkit [152864] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed windows build fix.

2:12 PM Changeset in webkit [152863] by achristensen@apple.com
  • 1 edit
    74 adds
    2 deletes in trunk/Source/ThirdParty/ANGLE

Added previously unincluded files from ANGLE r2426 with these exceptions:
No gyp files are included. No WebKit ports use them.
ANGLE.sln is not included. I will not use that.
translator_common and translator_hlsl projects and filters are not included.
I will need to make a customized translator project that uses the GLSL translator instead of the HLSL.
https://bugs.webkit.org/show_bug.cgi?id=118833

Reviewed by Dean Jackson.

  • src/compiler/builtin_symbols.json: Added.
  • src/compiler/generate_builtin_symbol_table.py: Added.

(parseBuiltin):

  • src/libEGL: Replaced.
  • src/libEGL/Config.cpp: Added.

(egl::Config::Config):
(egl::Config::setDefaults):
(egl::Config::set):
(egl::Config::getHandle):
(egl::SortConfig::SortConfig):
(egl::SortConfig::scanForWantedComponents):
(egl::SortConfig::wantedComponentsSize):
(egl::SortConfig::operator()):
(egl::ConfigSet::ConfigSet):
(egl::ConfigSet::add):
(egl::ConfigSet::size):
(egl::ConfigSet::getConfigs):
(egl::ConfigSet::get):

  • src/libEGL/Config.h: Added.
  • src/libEGL/Display.cpp: Added.

(egl::Display::getDisplay):
(egl::Display::Display):
(egl::Display::~Display):
(egl::Display::initialize):
(egl::Display::terminate):
(egl::Display::startScene):
(egl::Display::endScene):
(egl::Display::getConfigs):
(egl::Display::getConfigAttrib):
(egl::Display::createDevice):
(egl::Display::initializeDevice):
(egl::Display::resetDevice):
(egl::Display::createWindowSurface):
(egl::Display::createOffscreenSurface):
(egl::Display::createContext):
(egl::Display::restoreLostDevice):
(egl::Display::destroySurface):
(egl::Display::destroyContext):
(egl::Display::notifyDeviceLost):
(egl::Display::isDeviceLost):
(egl::Display::isInitialized):
(egl::Display::isValidConfig):
(egl::Display::isValidContext):
(egl::Display::isValidSurface):
(egl::Display::hasExistingWindowSurface):
(egl::Display::getMinSwapInterval):
(egl::Display::getMaxSwapInterval):
(egl::Display::getDevice):
(egl::Display::getDeviceCaps):
(egl::Display::getAdapterIdentifier):
(egl::Display::testDeviceLost):
(egl::Display::testDeviceResettable):
(egl::Display::sync):
(egl::Display::allocateEventQuery):
(egl::Display::freeEventQuery):
(egl::Display::getMultiSampleSupport):
(egl::Display::getDXT1TextureSupport):
(egl::Display::getDXT3TextureSupport):
(egl::Display::getDXT5TextureSupport):
(egl::Display::getDepthTextureSupport):
(egl::Display::getFloat32TextureSupport):
(egl::Display::getFloat16TextureSupport):
(egl::Display::getLuminanceTextureSupport):
(egl::Display::getLuminanceAlphaTextureSupport):
(egl::Display::getTextureFilterAnisotropySupport):
(egl::Display::getBufferPool):
(egl::Display::getTexturePool):
(egl::Display::getEventQuerySupport):
(egl::Display::getDefaultPresentParameters):
(egl::Display::initExtensionString):
(egl::Display::getExtensionString):
(egl::Display::initVendorString):
(egl::Display::getVendorString):
(egl::Display::shareHandleSupported):
(egl::Display::createVertexShader):
(egl::Display::compileShaderSource):
(egl::Display::createPixelShader):
(egl::Display::getVertexTextureSupport):
(egl::Display::getNonPower2TextureSupport):
(egl::Display::getOcclusionQuerySupport):
(egl::Display::getInstancingSupport):

  • src/libEGL/Display.h: Added.

(getComparableOSVersion):
(egl::Display::isD3d9ExDevice):

  • src/libEGL/README: Removed.
  • src/libEGL/ShaderCache.h: Added.

(egl::ShaderCache::ShaderCache):
(egl::ShaderCache::~ShaderCache):
(egl::ShaderCache::initialize):
(egl::ShaderCache::create):
(egl::ShaderCache::clear):
(egl::ShaderCache::createShader):

  • src/libEGL/Surface.cpp: Added.

(egl::Surface::Surface):
(egl::Surface::~Surface):
(egl::Surface::initialize):
(egl::Surface::release):
(egl::Surface::resetSwapChain):
(egl::Surface::swapRect):
(egl::Surface::getWindowHandle):
(egl::SurfaceWindowProc):
(egl::Surface::subclassWindow):
(egl::Surface::unsubclassWindow):
(egl::Surface::checkForOutOfDateSwapChain):
(egl::Surface::convertInterval):
(egl::Surface::swap):
(egl::Surface::postSubBuffer):
(egl::Surface::getWidth):
(egl::Surface::getHeight):
(egl::Surface::isPostSubBufferSupported):
(egl::Surface::getRenderTarget):
(egl::Surface::getDepthStencil):
(egl::Surface::getOffscreenTexture):
(egl::Surface::setSwapInterval):
(egl::Surface::getTextureFormat):
(egl::Surface::getTextureTarget):
(egl::Surface::setBoundTexture):
(egl::Surface::getBoundTexture):
(egl::Surface::getFormat):

  • src/libEGL/Surface.h: Added.

(egl::Surface::getShareHandle):

  • src/libEGL/libEGL.cpp: Added.

(validateDisplay):
(validateConfig):
(validateContext):
(validateSurface):

  • src/libEGL/libEGL.def: Added.
  • src/libEGL/libEGL.rc: Added.
  • src/libEGL/libEGL.vcxproj: Added.
  • src/libEGL/libEGL.vcxproj.filters: Added.
  • src/libEGL/main.cpp: Added.

(DllMain):
(egl::setCurrentError):
(egl::getCurrentError):
(egl::setCurrentAPI):
(egl::getCurrentAPI):
(egl::setCurrentDisplay):
(egl::getCurrentDisplay):
(egl::setCurrentDrawSurface):
(egl::getCurrentDrawSurface):
(egl::setCurrentReadSurface):
(egl::getCurrentReadSurface):
(error):

  • src/libEGL/main.h: Added.

(error):
(success):

  • src/libEGL/resource.h: Added.
  • src/libGLESv2: Replaced.
  • src/libGLESv2/BinaryStream.h: Added.

(gl::BinaryInputStream::BinaryInputStream):
(gl::BinaryInputStream::read):
(gl::BinaryInputStream::skip):
(gl::BinaryInputStream::offset):
(gl::BinaryInputStream::error):
(gl::BinaryInputStream::endOfStream):
(gl::BinaryOutputStream::BinaryOutputStream):
(gl::BinaryOutputStream::write):
(gl::BinaryOutputStream::length):
(gl::BinaryOutputStream::data):

  • src/libGLESv2/Blit.cpp: Added.

(gl::Blit::Blit):
(gl::Blit::~Blit):
(gl::Blit::initGeometry):
(gl::Blit::setShader):
(gl::Blit::setVertexShader):
(gl::Blit::setPixelShader):
(gl::Blit::getSurfaceRect):
(gl::Blit::boxFilter):
(gl::Blit::copy):
(gl::Blit::formatConvert):
(gl::Blit::setFormatConvertShaders):
(gl::Blit::copySurfaceToTexture):
(gl::Blit::setViewport):
(gl::Blit::setCommonBlitState):
(gl::Blit::render):
(gl::Blit::saveState):
(gl::Blit::restoreState):

  • src/libGLESv2/Blit.h: Added.
  • src/libGLESv2/Buffer.cpp: Added.

(gl::Buffer::Buffer):
(gl::Buffer::~Buffer):
(gl::Buffer::bufferData):
(gl::Buffer::bufferSubData):
(gl::Buffer::getStaticVertexBuffer):
(gl::Buffer::getStaticIndexBuffer):
(gl::Buffer::invalidateStaticData):
(gl::Buffer::promoteStaticUsage):

  • src/libGLESv2/Buffer.h: Added.

(gl::Buffer::data):
(gl::Buffer::size):
(gl::Buffer::usage):

  • src/libGLESv2/Context.cpp: Added.

(gl::makeStaticString):
(gl::Context::Context):
(gl::Context::~Context):
(gl::Context::makeCurrent):
(gl::Context::markAllStateDirty):
(gl::Context::markDxUniformsDirty):
(gl::Context::markContextLost):
(gl::Context::isContextLost):
(gl::Context::setClearColor):
(gl::Context::setClearDepth):
(gl::Context::setClearStencil):
(gl::Context::setCullFace):
(gl::Context::isCullFaceEnabled):
(gl::Context::setCullMode):
(gl::Context::setFrontFace):
(gl::Context::setDepthTest):
(gl::Context::isDepthTestEnabled):
(gl::Context::setDepthFunc):
(gl::Context::setDepthRange):
(gl::Context::setBlend):
(gl::Context::isBlendEnabled):
(gl::Context::setBlendFactors):
(gl::Context::setBlendColor):
(gl::Context::setBlendEquation):
(gl::Context::setStencilTest):
(gl::Context::isStencilTestEnabled):
(gl::Context::setStencilParams):
(gl::Context::setStencilBackParams):
(gl::Context::setStencilWritemask):
(gl::Context::setStencilBackWritemask):
(gl::Context::setStencilOperations):
(gl::Context::setStencilBackOperations):
(gl::Context::setPolygonOffsetFill):
(gl::Context::isPolygonOffsetFillEnabled):
(gl::Context::setPolygonOffsetParams):
(gl::Context::setSampleAlphaToCoverage):
(gl::Context::isSampleAlphaToCoverageEnabled):
(gl::Context::setSampleCoverage):
(gl::Context::isSampleCoverageEnabled):
(gl::Context::setSampleCoverageParams):
(gl::Context::setScissorTest):
(gl::Context::isScissorTestEnabled):
(gl::Context::setDither):
(gl::Context::isDitherEnabled):
(gl::Context::setLineWidth):
(gl::Context::setGenerateMipmapHint):
(gl::Context::setFragmentShaderDerivativeHint):
(gl::Context::setViewportParams):
(gl::Context::setScissorParams):
(gl::Context::setColorMask):
(gl::Context::setDepthMask):
(gl::Context::setActiveSampler):
(gl::Context::getReadFramebufferHandle):
(gl::Context::getDrawFramebufferHandle):
(gl::Context::getRenderbufferHandle):
(gl::Context::getArrayBufferHandle):
(gl::Context::getActiveQuery):
(gl::Context::setEnableVertexAttribArray):
(gl::Context::getVertexAttribState):
(gl::Context::setVertexAttribState):
(gl::Context::getVertexAttribPointer):
(gl::Context::getVertexAttributes):
(gl::Context::setPackAlignment):
(gl::Context::getPackAlignment):
(gl::Context::setUnpackAlignment):
(gl::Context::getUnpackAlignment):
(gl::Context::setPackReverseRowOrder):
(gl::Context::getPackReverseRowOrder):
(gl::Context::createBuffer):
(gl::Context::createProgram):
(gl::Context::createShader):
(gl::Context::createTexture):
(gl::Context::createRenderbuffer):
(gl::Context::createFramebuffer):
(gl::Context::createFence):
(gl::Context::createQuery):
(gl::Context::deleteBuffer):
(gl::Context::deleteShader):
(gl::Context::deleteProgram):
(gl::Context::deleteTexture):
(gl::Context::deleteRenderbuffer):
(gl::Context::deleteFramebuffer):
(gl::Context::deleteFence):
(gl::Context::deleteQuery):
(gl::Context::getBuffer):
(gl::Context::getShader):
(gl::Context::getProgram):
(gl::Context::getTexture):
(gl::Context::getRenderbuffer):
(gl::Context::getReadFramebuffer):
(gl::Context::getDrawFramebuffer):
(gl::Context::bindArrayBuffer):
(gl::Context::bindElementArrayBuffer):
(gl::Context::bindTexture2D):
(gl::Context::bindTextureCubeMap):
(gl::Context::bindReadFramebuffer):
(gl::Context::bindDrawFramebuffer):
(gl::Context::bindRenderbuffer):
(gl::Context::useProgram):
(gl::Context::linkProgram):
(gl::Context::setProgramBinary):
(gl::Context::beginQuery):
(gl::Context::endQuery):
(gl::Context::setFramebufferZero):
(gl::Context::setRenderbufferStorage):
(gl::Context::getFramebuffer):
(gl::Context::getFence):
(gl::Context::getQuery):
(gl::Context::getArrayBuffer):
(gl::Context::getElementArrayBuffer):
(gl::Context::getCurrentProgramBinary):
(gl::Context::getTexture2D):
(gl::Context::getTextureCubeMap):
(gl::Context::getSamplerTexture):
(gl::Context::getBooleanv):
(gl::Context::getFloatv):
(gl::Context::getIntegerv):
(gl::Context::getQueryParameterInfo):
(gl::Context::applyRenderTarget):
(gl::Context::applyState):
(gl::Context::applyVertexBuffer):
(gl::Context::applyIndexBuffer):
(gl::Context::applyShaders):
(gl::Context::applyTextures):
(gl::Context::readPixels):
(gl::Context::clear):
(gl::Context::drawArrays):
(gl::Context::drawElements):
(gl::Context::sync):
(gl::Context::drawLineLoop):
(gl::Context::recordInvalidEnum):
(gl::Context::recordInvalidValue):
(gl::Context::recordInvalidOperation):
(gl::Context::recordOutOfMemory):
(gl::Context::recordInvalidFramebufferOperation):
(gl::Context::getError):
(gl::Context::getResetStatus):
(gl::Context::isResetNotificationEnabled):
(gl::Context::supportsShaderModel3):
(gl::Context::getMaximumPointSize):
(gl::Context::getMaximumVaryingVectors):
(gl::Context::getMaximumVertexTextureImageUnits):
(gl::Context::getMaximumCombinedTextureImageUnits):
(gl::Context::getMaximumFragmentUniformVectors):
(gl::Context::getMaxSupportedSamples):
(gl::Context::getNearestSupportedSamples):
(gl::Context::supportsEventQueries):
(gl::Context::supportsOcclusionQueries):
(gl::Context::supportsDXT1Textures):
(gl::Context::supportsDXT3Textures):
(gl::Context::supportsDXT5Textures):
(gl::Context::supportsFloat32Textures):
(gl::Context::supportsFloat32LinearFilter):
(gl::Context::supportsFloat32RenderableTextures):
(gl::Context::supportsFloat16Textures):
(gl::Context::supportsFloat16LinearFilter):
(gl::Context::supportsFloat16RenderableTextures):
(gl::Context::getMaximumRenderbufferDimension):
(gl::Context::getMaximumTextureDimension):
(gl::Context::getMaximumCubeTextureDimension):
(gl::Context::getMaximumTextureLevel):
(gl::Context::supportsLuminanceTextures):
(gl::Context::supportsLuminanceAlphaTextures):
(gl::Context::supportsDepthTextures):
(gl::Context::supports32bitIndices):
(gl::Context::supportsNonPower2Texture):
(gl::Context::supportsInstancing):
(gl::Context::supportsTextureFilterAnisotropy):
(gl::Context::supportsDerivativeInstructions):
(gl::Context::getTextureMaxAnisotropy):
(gl::Context::getCurrentReadFormatType):
(gl::Context::detachBuffer):
(gl::Context::detachTexture):
(gl::Context::detachFramebuffer):
(gl::Context::detachRenderbuffer):
(gl::Context::getIncompleteTexture):
(gl::Context::skipDraw):
(gl::Context::isTriangleMode):
(gl::Context::setVertexAttrib):
(gl::Context::setVertexAttribDivisor):
(gl::Context::initExtensionString):
(gl::Context::getExtensionString):
(gl::Context::initRendererString):
(gl::Context::getRendererString):
(gl::Context::blitFramebuffer):
(gl::VertexDeclarationCache::VertexDeclarationCache):
(gl::VertexDeclarationCache::~VertexDeclarationCache):
(gl::VertexDeclarationCache::applyDeclaration):
(gl::VertexDeclarationCache::markStateDirty):

  • src/libGLESv2/Context.h: Added.

(gl::VertexAttribute::VertexAttribute):
(gl::VertexAttribute::typeSize):
(gl::VertexAttribute::stride):
(gl::Context::getBlitter):
(gl::Context::getDeviceCaps):

  • src/libGLESv2/D3DConstantTable.cpp: Added.

(gl::D3DConstant::D3DConstant):
(gl::D3DConstant::~D3DConstant):
(gl::D3DConstant::addStructMembers):
(gl::D3DConstantTable::D3DConstantTable):
(gl::D3DConstantTable::~D3DConstantTable):
(gl::D3DConstantTable::getConstant):
(gl::D3DConstantTable::getConstantByName):

  • src/libGLESv2/D3DConstantTable.h: Added.

(gl::D3DConstantTable::error):
(gl::D3DConstantTable::constants):

  • src/libGLESv2/Fence.cpp: Added.

(gl::Fence::Fence):
(gl::Fence::~Fence):
(gl::Fence::isFence):
(gl::Fence::setFence):
(gl::Fence::testFence):
(gl::Fence::finishFence):
(gl::Fence::getFenceiv):

  • src/libGLESv2/Fence.h: Added.
  • src/libGLESv2/Float16ToFloat32.cpp: Added.

(gl::float16ToFloat32):

  • src/libGLESv2/Float16ToFloat32.py: Added.

(convertMantissa):
(convertExponent):
(convertOffset):

  • src/libGLESv2/Framebuffer.cpp: Added.

(gl::Framebuffer::Framebuffer):
(gl::Framebuffer::~Framebuffer):
(gl::Framebuffer::lookupRenderbuffer):
(gl::Framebuffer::setColorbuffer):
(gl::Framebuffer::setDepthbuffer):
(gl::Framebuffer::setStencilbuffer):
(gl::Framebuffer::detachTexture):
(gl::Framebuffer::detachRenderbuffer):
(gl::Framebuffer::getRenderTargetSerial):
(gl::Framebuffer::getRenderTarget):
(gl::Framebuffer::getDepthStencil):
(gl::Framebuffer::getDepthbufferSerial):
(gl::Framebuffer::getStencilbufferSerial):
(gl::Framebuffer::getColorbuffer):
(gl::Framebuffer::getDepthbuffer):
(gl::Framebuffer::getStencilbuffer):
(gl::Framebuffer::getNullColorbuffer):
(gl::Framebuffer::getColorbufferType):
(gl::Framebuffer::getDepthbufferType):
(gl::Framebuffer::getStencilbufferType):
(gl::Framebuffer::getColorbufferHandle):
(gl::Framebuffer::getDepthbufferHandle):
(gl::Framebuffer::getStencilbufferHandle):
(gl::Framebuffer::hasStencil):
(gl::Framebuffer::completeness):
(gl::DefaultFramebuffer::DefaultFramebuffer):
(gl::Framebuffer::getSamples):
(gl::DefaultFramebuffer::completeness):

  • src/libGLESv2/Framebuffer.h: Added.
  • src/libGLESv2/HandleAllocator.cpp: Added.

(gl::HandleAllocator::HandleAllocator):
(gl::HandleAllocator::~HandleAllocator):
(gl::HandleAllocator::setBaseHandle):
(gl::HandleAllocator::allocate):
(gl::HandleAllocator::release):

  • src/libGLESv2/HandleAllocator.h: Added.
  • src/libGLESv2/IndexDataManager.cpp: Added.

(gl::IndexDataManager::IndexDataManager):
(gl::IndexDataManager::~IndexDataManager):
(gl::convertIndices):
(gl::computeRange):
(gl::IndexDataManager::prepareIndexData):
(gl::IndexDataManager::indexSize):
(gl::IndexDataManager::typeSize):
(gl::IndexDataManager::getCountingIndices):
(gl::IndexBuffer::IndexBuffer):
(gl::IndexBuffer::~IndexBuffer):
(gl::IndexBuffer::getBuffer):
(gl::IndexBuffer::getSerial):
(gl::IndexBuffer::issueSerial):
(gl::IndexBuffer::unmap):
(gl::StreamingIndexBuffer::StreamingIndexBuffer):
(gl::StreamingIndexBuffer::~StreamingIndexBuffer):
(gl::StreamingIndexBuffer::map):
(gl::StreamingIndexBuffer::reserveSpace):
(gl::StaticIndexBuffer::StaticIndexBuffer):
(gl::StaticIndexBuffer::~StaticIndexBuffer):
(gl::StaticIndexBuffer::map):
(gl::StaticIndexBuffer::reserveSpace):
(gl::StaticIndexBuffer::lookupType):
(gl::StaticIndexBuffer::lookupRange):
(gl::StaticIndexBuffer::addRange):

  • src/libGLESv2/IndexDataManager.h: Added.

(gl::IndexBuffer::size):
(gl::StaticIndexBuffer::IndexRange::operator<):

  • src/libGLESv2/Program.cpp: Added.

(gl::AttributeBindings::AttributeBindings):
(gl::AttributeBindings::~AttributeBindings):
(gl::InfoLog::InfoLog):
(gl::InfoLog::~InfoLog):
(gl::InfoLog::getLength):
(gl::InfoLog::getLog):
(gl::InfoLog::appendSanitized):
(gl::InfoLog::append):
(gl::InfoLog::reset):
(gl::Program::Program):
(gl::Program::~Program):
(gl::Program::attachShader):
(gl::Program::detachShader):
(gl::Program::getAttachedShadersCount):
(gl::AttributeBindings::bindAttributeLocation):
(gl::Program::bindAttributeLocation):
(gl::Program::link):
(gl::AttributeBindings::getAttributeBinding):
(gl::Program::unlink):
(gl::Program::isLinked):
(gl::Program::getProgramBinary):
(gl::Program::setProgramBinary):
(gl::Program::release):
(gl::Program::addRef):
(gl::Program::getRefCount):
(gl::Program::getProgramBinaryLength):
(gl::Program::getInfoLogLength):
(gl::Program::getInfoLog):
(gl::Program::getAttachedShaders):
(gl::Program::getActiveAttribute):
(gl::Program::getActiveAttributeCount):
(gl::Program::getActiveAttributeMaxLength):
(gl::Program::getActiveUniform):
(gl::Program::getActiveUniformCount):
(gl::Program::getActiveUniformMaxLength):
(gl::Program::flagForDeletion):
(gl::Program::isFlaggedForDeletion):
(gl::Program::validate):
(gl::Program::isValidated):

  • src/libGLESv2/Program.h: Added.
  • src/libGLESv2/ProgramBinary.cpp: Added.

(gl::str):
(gl::Uniform::Uniform):
(gl::Uniform::~Uniform):
(gl::Uniform::isArray):
(gl::UniformLocation::UniformLocation):
(gl::ProgramBinary::ProgramBinary):
(gl::ProgramBinary::~ProgramBinary):
(gl::ProgramBinary::getSerial):
(gl::ProgramBinary::issueSerial):
(gl::ProgramBinary::getPixelShader):
(gl::ProgramBinary::getVertexShader):
(gl::ProgramBinary::getAttributeLocation):
(gl::ProgramBinary::getSemanticIndex):
(gl::ProgramBinary::getUsedSamplerRange):
(gl::ProgramBinary::usesPointSize):
(gl::ProgramBinary::getSamplerMapping):
(gl::ProgramBinary::getSamplerTextureType):
(gl::ProgramBinary::getUniformLocation):
(gl::ProgramBinary::setUniform1fv):
(gl::ProgramBinary::setUniform2fv):
(gl::ProgramBinary::setUniform3fv):
(gl::ProgramBinary::setUniform4fv):
(gl::transposeMatrix):
(gl::ProgramBinary::setUniformMatrix2fv):
(gl::ProgramBinary::setUniformMatrix3fv):
(gl::ProgramBinary::setUniformMatrix4fv):
(gl::ProgramBinary::setUniform1iv):
(gl::ProgramBinary::setUniform2iv):
(gl::ProgramBinary::setUniform3iv):
(gl::ProgramBinary::setUniform4iv):
(gl::ProgramBinary::getUniformfv):
(gl::ProgramBinary::getUniformiv):
(gl::ProgramBinary::dirtyAllUniforms):
(gl::ProgramBinary::applyUniforms):
(gl::ProgramBinary::compileToBinary):
(gl::ProgramBinary::packVaryings):
(gl::ProgramBinary::linkVaryings):
(gl::ProgramBinary::load):
(gl::ProgramBinary::save):
(gl::ProgramBinary::getLength):
(gl::ProgramBinary::link):
(gl::ProgramBinary::linkAttributes):
(gl::ProgramBinary::linkUniforms):
(gl::ProgramBinary::defineUniform):
(gl::ProgramBinary::createUniform):
(gl::ProgramBinary::decorateAttribute):
(gl::ProgramBinary::undecorateUniform):
(gl::ProgramBinary::applyUniformnbv):
(gl::ProgramBinary::applyUniformnfv):
(gl::ProgramBinary::applyUniform1iv):
(gl::ProgramBinary::applyUniform2iv):
(gl::ProgramBinary::applyUniform3iv):
(gl::ProgramBinary::applyUniform4iv):
(gl::ProgramBinary::applyUniformniv):
(gl::ProgramBinary::isValidated):
(gl::ProgramBinary::getActiveAttribute):
(gl::ProgramBinary::getActiveAttributeCount):
(gl::ProgramBinary::getActiveAttributeMaxLength):
(gl::ProgramBinary::getActiveUniform):
(gl::ProgramBinary::getActiveUniformCount):
(gl::ProgramBinary::getActiveUniformMaxLength):
(gl::ProgramBinary::validate):
(gl::ProgramBinary::validateSamplers):
(gl::ProgramBinary::getDxDepthRangeLocation):
(gl::ProgramBinary::getDxDepthLocation):
(gl::ProgramBinary::getDxCoordLocation):
(gl::ProgramBinary::getDxHalfPixelSizeLocation):
(gl::ProgramBinary::getDxFrontCCWLocation):
(gl::ProgramBinary::getDxPointsOrLinesLocation):
(gl::ProgramBinary::Sampler::Sampler):

  • src/libGLESv2/ProgramBinary.h: Added.

(gl::Uniform::RegisterInfo::RegisterInfo):
(gl::Uniform::RegisterInfo::set):
(gl::UniformLocation::UniformLocation):

  • src/libGLESv2/Query.cpp: Added.

(gl::Query::Query):
(gl::Query::~Query):
(gl::Query::begin):
(gl::Query::end):
(gl::Query::getResult):
(gl::Query::isResultAvailable):
(gl::Query::getType):
(gl::Query::testQuery):

  • src/libGLESv2/Query.h: Added.
  • src/libGLESv2/README: Removed.
  • src/libGLESv2/Renderbuffer.cpp: Added.

(gl::RenderbufferInterface::RenderbufferInterface):
(gl::RenderbufferInterface::addProxyRef):
(gl::RenderbufferInterface::releaseProxy):
(gl::RenderbufferInterface::getRedSize):
(gl::RenderbufferInterface::getGreenSize):
(gl::RenderbufferInterface::getBlueSize):
(gl::RenderbufferInterface::getAlphaSize):
(gl::RenderbufferInterface::getDepthSize):
(gl::RenderbufferInterface::getStencilSize):
(gl::RenderbufferTexture2D::RenderbufferTexture2D):
(gl::RenderbufferTexture2D::~RenderbufferTexture2D):
(gl::RenderbufferTexture2D::addProxyRef):
(gl::RenderbufferTexture2D::releaseProxy):
(gl::RenderbufferTexture2D::getRenderTarget):
(gl::RenderbufferTexture2D::getDepthStencil):
(gl::RenderbufferTexture2D::getWidth):
(gl::RenderbufferTexture2D::getHeight):
(gl::RenderbufferTexture2D::getInternalFormat):
(gl::RenderbufferTexture2D::getD3DFormat):
(gl::RenderbufferTexture2D::getSamples):
(gl::RenderbufferTexture2D::getSerial):
(gl::RenderbufferTextureCubeMap::RenderbufferTextureCubeMap):
(gl::RenderbufferTextureCubeMap::~RenderbufferTextureCubeMap):
(gl::RenderbufferTextureCubeMap::addProxyRef):
(gl::RenderbufferTextureCubeMap::releaseProxy):
(gl::RenderbufferTextureCubeMap::getRenderTarget):
(gl::RenderbufferTextureCubeMap::getDepthStencil):
(gl::RenderbufferTextureCubeMap::getWidth):
(gl::RenderbufferTextureCubeMap::getHeight):
(gl::RenderbufferTextureCubeMap::getInternalFormat):
(gl::RenderbufferTextureCubeMap::getD3DFormat):
(gl::RenderbufferTextureCubeMap::getSamples):
(gl::RenderbufferTextureCubeMap::getSerial):
(gl::Renderbuffer::Renderbuffer):
(gl::Renderbuffer::~Renderbuffer):
(gl::Renderbuffer::addRef):
(gl::Renderbuffer::release):
(gl::Renderbuffer::getRenderTarget):
(gl::Renderbuffer::getDepthStencil):
(gl::Renderbuffer::getWidth):
(gl::Renderbuffer::getHeight):
(gl::Renderbuffer::getInternalFormat):
(gl::Renderbuffer::getD3DFormat):
(gl::Renderbuffer::getRedSize):
(gl::Renderbuffer::getGreenSize):
(gl::Renderbuffer::getBlueSize):
(gl::Renderbuffer::getAlphaSize):
(gl::Renderbuffer::getDepthSize):
(gl::Renderbuffer::getStencilSize):
(gl::Renderbuffer::getSamples):
(gl::Renderbuffer::getSerial):
(gl::Renderbuffer::setStorage):
(gl::RenderbufferStorage::RenderbufferStorage):
(gl::RenderbufferStorage::~RenderbufferStorage):
(gl::RenderbufferStorage::getRenderTarget):
(gl::RenderbufferStorage::getDepthStencil):
(gl::RenderbufferStorage::getWidth):
(gl::RenderbufferStorage::getHeight):
(gl::RenderbufferStorage::getInternalFormat):
(gl::RenderbufferStorage::getD3DFormat):
(gl::RenderbufferStorage::getSamples):
(gl::RenderbufferStorage::getSerial):
(gl::RenderbufferStorage::issueSerial):
(gl::RenderbufferStorage::issueCubeSerials):
(gl::Colorbuffer::Colorbuffer):
(gl::Colorbuffer::~Colorbuffer):
(gl::Colorbuffer::getRenderTarget):
(gl::DepthStencilbuffer::DepthStencilbuffer):
(gl::DepthStencilbuffer::~DepthStencilbuffer):
(gl::DepthStencilbuffer::getDepthStencil):
(gl::Depthbuffer::Depthbuffer):
(gl::Depthbuffer::~Depthbuffer):
(gl::Stencilbuffer::Stencilbuffer):
(gl::Stencilbuffer::~Stencilbuffer):

  • src/libGLESv2/Renderbuffer.h: Added.

(gl::RenderbufferInterface::~RenderbufferInterface):

  • src/libGLESv2/ResourceManager.cpp: Added.

(gl::ResourceManager::ResourceManager):
(gl::ResourceManager::~ResourceManager):
(gl::ResourceManager::addRef):
(gl::ResourceManager::release):
(gl::ResourceManager::createBuffer):
(gl::ResourceManager::createShader):
(gl::ResourceManager::createProgram):
(gl::ResourceManager::createTexture):
(gl::ResourceManager::createRenderbuffer):
(gl::ResourceManager::deleteBuffer):
(gl::ResourceManager::deleteShader):
(gl::ResourceManager::deleteProgram):
(gl::ResourceManager::deleteTexture):
(gl::ResourceManager::deleteRenderbuffer):
(gl::ResourceManager::getBuffer):
(gl::ResourceManager::getShader):
(gl::ResourceManager::getTexture):
(gl::ResourceManager::getProgram):
(gl::ResourceManager::getRenderbuffer):
(gl::ResourceManager::setRenderbuffer):
(gl::ResourceManager::checkBufferAllocation):
(gl::ResourceManager::checkTextureAllocation):
(gl::ResourceManager::checkRenderbufferAllocation):

  • src/libGLESv2/ResourceManager.h: Added.
  • src/libGLESv2/Shader.cpp: Added.

(gl::Shader::Shader):
(gl::Shader::~Shader):
(gl::Shader::getHandle):
(gl::Shader::setSource):
(gl::Shader::getInfoLogLength):
(gl::Shader::getInfoLog):
(gl::Shader::getSourceLength):
(gl::Shader::getTranslatedSourceLength):
(gl::Shader::getSourceImpl):
(gl::Shader::getSource):
(gl::Shader::getTranslatedSource):
(gl::Shader::isCompiled):
(gl::Shader::getHLSL):
(gl::Shader::addRef):
(gl::Shader::release):
(gl::Shader::getRefCount):
(gl::Shader::isFlaggedForDeletion):
(gl::Shader::flagForDeletion):
(gl::Shader::initializeCompiler):
(gl::Shader::releaseCompiler):
(gl::Shader::parseVaryings):
(gl::Shader::uncompile):
(gl::Shader::compileToHLSL):
(gl::Shader::parseType):
(gl::Shader::compareVarying):
(gl::VertexShader::VertexShader):
(gl::VertexShader::~VertexShader):
(gl::VertexShader::getType):
(gl::VertexShader::uncompile):
(gl::VertexShader::compile):
(gl::VertexShader::getSemanticIndex):
(gl::VertexShader::parseAttributes):
(gl::FragmentShader::FragmentShader):
(gl::FragmentShader::~FragmentShader):
(gl::FragmentShader::getType):
(gl::FragmentShader::compile):

  • src/libGLESv2/Shader.h: Added.

(gl::Varying::Varying):
(gl::Attribute::Attribute):

  • src/libGLESv2/Texture.cpp: Added.

(gl::ConvertTextureInternalFormat):
(gl::IsTextureFormatRenderable):
(gl::GetTextureUsage):
(gl::MakeValidSize):
(gl::CopyLockableSurfaces):
(gl::Image::Image):
(gl::Image::~Image):
(gl::Image::redefine):
(gl::Image::createSurface):
(gl::Image::lock):
(gl::Image::unlock):
(gl::Image::isRenderableFormat):
(gl::Image::getD3DFormat):
(gl::Image::getSurface):
(gl::Image::setManagedSurface):
(gl::Image::updateSurface):
(gl::Image::loadData):
(gl::Image::loadAlphaData):
(gl::Image::loadAlphaFloatData):
(gl::Image::loadAlphaHalfFloatData):
(gl::Image::loadLuminanceData):
(gl::Image::loadLuminanceFloatData):
(gl::Image::loadLuminanceHalfFloatData):
(gl::Image::loadLuminanceAlphaData):
(gl::Image::loadLuminanceAlphaFloatData):
(gl::Image::loadLuminanceAlphaHalfFloatData):
(gl::Image::loadRGBUByteData):
(gl::Image::loadRGB565Data):
(gl::Image::loadRGBFloatData):
(gl::Image::loadRGBHalfFloatData):
(gl::Image::loadRGBAUByteData):
(gl::Image::loadRGBA4444Data):
(gl::Image::loadRGBA5551Data):
(gl::Image::loadRGBAFloatData):
(gl::Image::loadRGBAHalfFloatData):
(gl::Image::loadBGRAData):
(gl::Image::loadCompressedData):
(gl::Image::copy):
(gl::TextureStorage::TextureStorage):
(gl::TextureStorage::~TextureStorage):
(gl::TextureStorage::isRenderTarget):
(gl::TextureStorage::isManaged):
(gl::TextureStorage::getPool):
(gl::TextureStorage::getUsage):
(gl::TextureStorage::getTextureSerial):
(gl::TextureStorage::issueTextureSerial):
(gl::TextureStorage::getLodOffset):
(gl::Texture::Texture):
(gl::Texture::~Texture):
(gl::Texture::setMinFilter):
(gl::Texture::setMagFilter):
(gl::Texture::setWrapS):
(gl::Texture::setWrapT):
(gl::Texture::setMaxAnisotropy):
(gl::Texture::setUsage):
(gl::Texture::getMinFilter):
(gl::Texture::getMagFilter):
(gl::Texture::getWrapS):
(gl::Texture::getWrapT):
(gl::Texture::getMaxAnisotropy):
(gl::Texture::getUsage):
(gl::Texture::isMipmapFiltered):
(gl::Texture::setImage):
(gl::Texture::setCompressedImage):
(gl::Texture::subImage):
(gl::Texture::subImageCompressed):
(gl::Texture::getTexture):
(gl::Texture::hasDirtyParameters):
(gl::Texture::hasDirtyImages):
(gl::Texture::resetDirty):
(gl::Texture::getTextureSerial):
(gl::Texture::getRenderTargetSerial):
(gl::Texture::isImmutable):
(gl::Texture::getLodOffset):
(gl::Texture::creationLevels):
(gl::Texture::levelCount):
(gl::Texture::getBlitter):
(gl::Texture::copyToRenderTarget):
(gl::TextureStorage2D::TextureStorage2D):
(gl::TextureStorage2D::~TextureStorage2D):
(gl::TextureStorage2D::getSurfaceLevel):
(gl::TextureStorage2D::getBaseTexture):
(gl::TextureStorage2D::getRenderTargetSerial):
(gl::Texture2D::Texture2D):
(gl::Texture2D::~Texture2D):
(gl::Texture2D::addProxyRef):
(gl::Texture2D::releaseProxy):
(gl::Texture2D::getTarget):
(gl::Texture2D::getWidth):
(gl::Texture2D::getHeight):
(gl::Texture2D::getInternalFormat):
(gl::Texture2D::getD3DFormat):
(gl::Texture2D::redefineImage):
(gl::Texture2D::setImage):
(gl::Texture2D::bindTexImage):
(gl::Texture2D::releaseTexImage):
(gl::Texture2D::setCompressedImage):
(gl::Texture2D::commitRect):
(gl::Texture2D::subImage):
(gl::Texture2D::subImageCompressed):
(gl::Texture2D::copyImage):
(gl::Texture2D::copySubImage):
(gl::Texture2D::storage):
(gl::Texture2D::isSamplerComplete):
(gl::Texture2D::isMipmapComplete):
(gl::Texture2D::isCompressed):
(gl::Texture2D::isDepth):
(gl::Texture2D::getBaseTexture):
(gl::Texture2D::createTexture):
(gl::Texture2D::updateTexture):
(gl::Texture2D::convertToRenderTarget):
(gl::Texture2D::generateMipmaps):
(gl::Texture2D::getRenderbuffer):
(gl::Texture2D::getRenderTarget):
(gl::Texture2D::getDepthStencil):
(gl::Texture2D::getStorage):
(gl::TextureStorageCubeMap::TextureStorageCubeMap):
(gl::TextureStorageCubeMap::~TextureStorageCubeMap):
(gl::TextureStorageCubeMap::getCubeMapSurface):
(gl::TextureStorageCubeMap::getBaseTexture):
(gl::TextureStorageCubeMap::getRenderTargetSerial):
(gl::TextureCubeMap::TextureCubeMap):
(gl::TextureCubeMap::~TextureCubeMap):
(gl::TextureCubeMap::addProxyRef):
(gl::TextureCubeMap::releaseProxy):
(gl::TextureCubeMap::getTarget):
(gl::TextureCubeMap::getWidth):
(gl::TextureCubeMap::getHeight):
(gl::TextureCubeMap::getInternalFormat):
(gl::TextureCubeMap::getD3DFormat):
(gl::TextureCubeMap::setImagePosX):
(gl::TextureCubeMap::setImageNegX):
(gl::TextureCubeMap::setImagePosY):
(gl::TextureCubeMap::setImageNegY):
(gl::TextureCubeMap::setImagePosZ):
(gl::TextureCubeMap::setImageNegZ):
(gl::TextureCubeMap::setCompressedImage):
(gl::TextureCubeMap::commitRect):
(gl::TextureCubeMap::subImage):
(gl::TextureCubeMap::subImageCompressed):
(gl::TextureCubeMap::isSamplerComplete):
(gl::TextureCubeMap::isCubeComplete):
(gl::TextureCubeMap::isMipmapCubeComplete):
(gl::TextureCubeMap::isCompressed):
(gl::TextureCubeMap::getBaseTexture):
(gl::TextureCubeMap::createTexture):
(gl::TextureCubeMap::updateTexture):
(gl::TextureCubeMap::convertToRenderTarget):
(gl::TextureCubeMap::setImage):
(gl::TextureCubeMap::faceIndex):
(gl::TextureCubeMap::redefineImage):
(gl::TextureCubeMap::copyImage):
(gl::TextureCubeMap::copySubImage):
(gl::TextureCubeMap::storage):
(gl::TextureCubeMap::generateMipmaps):
(gl::TextureCubeMap::getRenderbuffer):
(gl::TextureCubeMap::getRenderTarget):
(gl::TextureCubeMap::getStorage):

  • src/libGLESv2/Texture.h: Added.

(gl::Image::markDirty):
(gl::Image::markClean):
(gl::Image::getWidth):
(gl::Image::getHeight):
(gl::Image::getInternalFormat):
(gl::Image::isDirty):

  • src/libGLESv2/TextureSSE2.cpp: Added.

(gl::Image::loadRGBAUByteDataSSE2):
(gl::Image::loadAlphaDataSSE2):

  • src/libGLESv2/VertexDataManager.cpp: Added.

(gl::elementsInBuffer):
(gl::VertexDataManager::VertexDataManager):
(gl::VertexDataManager::~VertexDataManager):
(gl::VertexDataManager::writeAttributeData):
(gl::VertexDataManager::prepareVertexData):
(gl::VertexDataManager::spaceRequired):
(gl::VertexDataManager::checkVertexCaps):
(gl::VertexDataManager::typeIndex):
(gl::VertexBuffer::VertexBuffer):
(gl::VertexBuffer::~VertexBuffer):
(gl::VertexBuffer::unmap):
(gl::VertexBuffer::getBuffer):
(gl::VertexBuffer::getSerial):
(gl::VertexBuffer::issueSerial):
(gl::ArrayVertexBuffer::ArrayVertexBuffer):
(gl::ArrayVertexBuffer::~ArrayVertexBuffer):
(gl::ArrayVertexBuffer::addRequiredSpace):
(gl::StreamingVertexBuffer::StreamingVertexBuffer):
(gl::StreamingVertexBuffer::~StreamingVertexBuffer):
(gl::StreamingVertexBuffer::map):
(gl::StreamingVertexBuffer::reserveRequiredSpace):
(gl::StaticVertexBuffer::StaticVertexBuffer):
(gl::StaticVertexBuffer::~StaticVertexBuffer):
(gl::StaticVertexBuffer::map):
(gl::StaticVertexBuffer::reserveRequiredSpace):
(gl::StaticVertexBuffer::lookupAttribute):
(gl::VertexDataManager::formatConverter):

  • src/libGLESv2/VertexDataManager.h: Added.

(gl::ArrayVertexBuffer::size):
(gl::VertexDataManager::dirtyCurrentValue):

  • src/libGLESv2/libGLESv2.cpp: Added.

(validImageSize):
(checkTextureFormatType):
(validateSubImageParams2D):
(validateSubImageParamsCube):
(validReadFormatType):

  • src/libGLESv2/libGLESv2.def: Added.
  • src/libGLESv2/libGLESv2.rc: Added.
  • src/libGLESv2/libGLESv2.vcxproj: Added.
  • src/libGLESv2/libGLESv2.vcxproj.filters: Added.
  • src/libGLESv2/main.cpp: Added.

(DllMain):
(gl::makeCurrent):
(gl::getContext):
(gl::getNonLostContext):
(gl::getDisplay):
(gl::getDevice):
(gl::checkDeviceLost):
(error):

  • src/libGLESv2/main.h: Added.

(error):

  • src/libGLESv2/mathutil.h: Added.

(gl::Vector4::Vector4):
(gl::isPow2):
(gl::log2):
(gl::ceilPow2):
(gl::clamp):
(gl::clamp01):
(gl::unorm):
(gl::supportsSSE2):
(gl::float32ToFloat16):

  • src/libGLESv2/resource.h: Added.
  • src/libGLESv2/shaders: Added.
  • src/libGLESv2/shaders/Blit.ps: Added.
  • src/libGLESv2/shaders/Blit.vs: Added.
  • src/libGLESv2/shaders/componentmaskps.h: Added.
  • src/libGLESv2/shaders/flipyvs.h: Added.
  • src/libGLESv2/shaders/generate_shaders.bat: Added.
  • src/libGLESv2/shaders/luminanceps.h: Added.
  • src/libGLESv2/shaders/passthroughps.h: Added.
  • src/libGLESv2/shaders/standardvs.h: Added.
  • src/libGLESv2/utilities.cpp: Added.

(gl::UniformExternalComponentCount):
(gl::UniformInternalComponentCount):
(gl::UniformComponentType):
(gl::UniformComponentSize):
(gl::UniformInternalSize):
(gl::UniformExternalSize):
(gl::VariableRowCount):
(gl::VariableColumnCount):
(gl::AllocateFirstFreeBits):
(gl::ComputePitch):
(gl::ComputeCompressedPitch):
(gl::ComputeCompressedSize):
(gl::IsCompressed):
(gl::IsDepthTexture):
(gl::IsStencilTexture):
(gl::ComputePixelSize):
(gl::IsCubemapTextureTarget):
(gl::IsInternalTextureTarget):
(gl::ConvertSizedInternalFormat):
(gl::ExtractFormat):
(gl::ExtractType):
(gl::IsColorRenderable):
(gl::IsDepthRenderable):
(gl::IsStencilRenderable):
(gl::IsFloat32Format):
(gl::IsFloat16Format):
(es2dx::ConvertComparison):
(es2dx::ConvertColor):
(es2dx::ConvertBlendFunc):
(es2dx::ConvertBlendOp):
(es2dx::ConvertStencilOp):
(es2dx::ConvertTextureWrap):
(es2dx::ConvertCullMode):
(es2dx::ConvertCubeFace):
(es2dx::ConvertColorMask):
(es2dx::ConvertMagFilter):
(es2dx::ConvertMinFilter):
(es2dx::ConvertPrimitiveType):
(es2dx::ConvertRenderbufferFormat):
(es2dx::GetMultisampleTypeFromSamples):
(dx2es::GetStencilSize):
(dx2es::GetAlphaSize):
(dx2es::GetRedSize):
(dx2es::GetGreenSize):
(dx2es::GetBlueSize):
(dx2es::GetDepthSize):
(dx2es::GetSamplesFromMultisampleType):
(dx2es::IsFormatChannelEquivalent):
(dx2es::ConvertReadBufferFormat):
(dx2es::ConvertBackBufferFormat):
(dx2es::ConvertDepthStencilFormat):
(dx::IsCompressedFormat):
(dx::ComputeRowSize):
(getTempPath):
(writeFile):

  • src/libGLESv2/utilities.h: Added.

(isDeviceLostError):

  • src/libGLESv2/vertexconversion.h: Added.

(gl::Identity::convert):
(gl::Cast::convert):
(gl::Normalize::convert):
(gl::FixedToFloat::convert):
(gl::SimpleDefaultValues::zero):
(gl::SimpleDefaultValues::one):
(gl::NormalizedDefaultValues::zero):
(gl::NormalizedDefaultValues::one):
(gl::VertexDataConverter::convertArray):
(gl::VertexDataConverter::pointerAddBytes):
(gl::VertexDataConverter::copyComponent):

1:38 PM Changeset in webkit [152862] by ap@apple.com
  • 4 edits in trunk/Source/WebKit2

<rdar://problem/13886443> Assertion failures in NetworkProcess in SandboxExtension::revoke when aborting SyncNetworkResourceLoader
<rdar://problem/13826348> ASSERT(!m_useCount) fails in NetworkProcess at SandboxExtension::~SandboxExtension
https://bugs.webkit.org/show_bug.cgi?id=118855

Reviewed by Brady Eidson.

  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::cleanup): (WebKit::NetworkResourceLoader::didFinishLoading): (WebKit::NetworkResourceLoader::didFail): Moved sandbox extension invalidation to cleanup() meaning that we won't fail to do this when aborting a loader that currently loading from network.


  • NetworkProcess/SchedulableLoader.cpp: (WebKit::SchedulableLoader::SchedulableLoader): (WebKit::SchedulableLoader::consumeSandboxExtensions): (WebKit::SchedulableLoader::invalidateSandboxExtensions):
  • NetworkProcess/SchedulableLoader.h: Keep track of whether sandbox extensions are consumed, we don't want to revoke extensions that were never consumed (as used to be the case with sync loaders, and would be with async ones after the above fix). Also, get rid of extensions immediately when invalidating, we won't need them again.
1:30 PM Changeset in webkit [152861] by Brent Fulgham
  • 17 edits
    6 adds in trunk

[Windows] Support in-band text tracks.
https://bugs.webkit.org/show_bug.cgi?id=103770.

1:28 PM Changeset in webkit [152860] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Test enabling WinEWS tests now that queue is at a good state and NRWT with multiple processes is enabled.

  • Scripts/webkitpy/common/config/ews.json:
12:07 PM Changeset in webkit [152859] by Christophe Dumez
  • 9 edits
    1 add in trunk

Make atob() / btoa() argument non optional
https://bugs.webkit.org/show_bug.cgi?id=118844

Reviewed by Kentaro Hara.

Source/WebCore:

According to the latest specification, the argument to atob() / btoa()
should not be optional:
http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#windowbase64

This patch makes WebKit behave according to the specification. The argument
is also mandatory in Firefox, IE10 and Blink.

atob() / btoa() are also moved to their own WindowBase64 interface which
the Window interface implements. This does not change the behavior but
this is closer to the specification and it will make exposing those
methods to workers easier later on.

No new tests, already covered by:
fast/dom/Window/atob-btoa.html

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • page/DOMWindow.idl:
  • page/WindowBase64.idl: Added.

LayoutTests:

Update and rebaseline fast/dom/Window/atob-btoa.html as atob() /
btoa() 's behavior has changed to match the specification and
the behavior in other browsers.

  • fast/dom/Window/atob-btoa-expected.txt:
  • fast/dom/Window/atob-btoa.html:
11:58 AM Changeset in webkit [152858] by Antoine Quint
  • 2 edits in trunk/Source/WebCore

Crash in WebCore::createMarkup()
https://bugs.webkit.org/show_bug.cgi?id=118847

Reviewed by Ryosuke Niwa.

Also check that we have a containingBlock() for the renderer() so that we
may safely call node() on it.

  • editing/markup.cpp:

(WebCore::highestAncestorToWrapMarkup):

11:54 AM Changeset in webkit [152857] by fpizlo@apple.com
  • 3 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: CFA should consider live-at-head for clobbering and dumping
https://bugs.webkit.org/show_bug.cgi?id=118857

Reviewed by Mark Hahnenberg.

  • clobberStructures() was not considering nodes live-at-head when in SSA form. This means it would fail to clobber some structures.


  • dump() was not considering nodes live-at-head when in SSA form. This means it wouldn't dump everything that you might be interested in.


  • AbstractState::m_currentNode is a useless variable and we should get rid of it.
  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::AbstractState):
(JSC::DFG::AbstractState::beginBasicBlock):
(JSC::DFG::AbstractState::reset):
(JSC::DFG::AbstractState::startExecuting):
(JSC::DFG::AbstractState::clobberStructures):
(JSC::DFG::AbstractState::dump):

  • dfg/DFGAbstractState.h:

(AbstractState):

11:36 AM Changeset in webkit [152856] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152807. <rdar://problem/14472115>

11:34 AM Changeset in webkit [152855] by Lucas Forschler
  • 3 edits in tags/Safari-537.51.2/Source/JavaScriptCore

Merged r152807. <rdar://problem/14472115>

11:33 AM Changeset in webkit [152854] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r152805. <rdar://problem/14173389>

11:31 AM Changeset in webkit [152853] by Lucas Forschler
  • 2 edits in tags/Safari-537.51.2/Source/WebKit2

Merged r152805. <rdar://problem/14173389>

11:26 AM Changeset in webkit [152852] by dbates@webkit.org
  • 2 edits in trunk/Tools

REGRESSION (r132678): Tests that use SSL or port 8080 time out when run using old-run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=118854
<rdar://problem/14081339>

Reviewed by David Kilzer.

Following <http://trac.webkit.org/changeset/132678> (https://bugs.webkit.org/show_bug.cgi?id=98602)
Apache no longer listens to ports 8443 (SSL) and 8080. So, tests that use these ports time out when
run using old-run-webkit-tests. We need to update old-run-webkit-tests to explicitly tell Apache to
listen on these ports so that we can run tests that use port 8443 and 8080.

  • Scripts/old-run-webkit-tests:

(configureAndOpenHTTPDIfNeeded):

11:05 AM Changeset in webkit [152851] by Lucas Forschler
  • 5 edits in tags/Safari-537.51.2/Source

Versioning.

11:03 AM Changeset in webkit [152850] by Lucas Forschler
  • 1 copy in tags/Safari-537.51.2

New Tag.

10:45 AM Changeset in webkit [152849] by commit-queue@webkit.org
  • 1 edit
    16 adds
    14 deletes in trunk/LayoutTests

Convert MathML fraction tests to reftests.
https://bugs.webkit.org/show_bug.cgi?id=118812

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-18
Reviewed by Chris Fleizach.

fractions-vertical-alignment and fractions are converted to reftests.

  • mathml/presentation/fractions-box-expected.html: Added.
  • mathml/presentation/fractions-box.html: Added.
  • mathml/presentation/fractions-color-expected-mismatch.html: Added.
  • mathml/presentation/fractions-color.html: Added.
  • mathml/presentation/fractions-invalid-expected.html: Added.
  • mathml/presentation/fractions-invalid.html: Added.
  • mathml/presentation/fractions-linethickness-expected.html: Added.
  • mathml/presentation/fractions-linethickness.html: Added.
  • mathml/presentation/fractions-mrow-expected.html: Added.
  • mathml/presentation/fractions-mrow.html: Added.
  • mathml/presentation/fractions-numalign-denomalign-expected.html: Added.
  • mathml/presentation/fractions-numalign-denomalign.html: Added.
  • mathml/presentation/fractions-positions-expected.html: Added.
  • mathml/presentation/fractions-positions.html: Added.
  • mathml/presentation/fractions-vertical-alignment-expected.html: Added.
  • mathml/presentation/fractions-vertical-alignment.html: Added.
  • mathml/presentation/fractions-vertical-alignment.xhtml: Removed.
  • mathml/presentation/fractions.xhtml: Removed.
  • platform/efl/mathml/presentation/fractions-expected.png: Removed.
  • platform/efl/mathml/presentation/fractions-expected.txt: Removed.
  • platform/efl/mathml/presentation/fractions-vertical-alignment-expected.png: Removed.
  • platform/efl/mathml/presentation/fractions-vertical-alignment-expected.txt: Removed.
  • platform/gtk/mathml/presentation/fractions-expected.png: Removed.
  • platform/gtk/mathml/presentation/fractions-expected.txt: Removed.
  • platform/gtk/mathml/presentation/fractions-vertical-alignment-expected.png: Removed.
  • platform/gtk/mathml/presentation/fractions-vertical-alignment-expected.txt: Removed.
  • platform/mac/mathml/presentation/fractions-expected.png: Removed.
  • platform/mac/mathml/presentation/fractions-expected.txt: Removed.
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png: Removed.
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt: Removed.
9:50 AM Changeset in webkit [152848] by akling@apple.com
  • 4 edits in trunk/Source

CodeBlock::m_argumentValueProfiles wastes a lot of memory.
<http://webkit.org/b/118852>
<rdar://problem/14481659>

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

Use Vector::resizeToFit() for CodeBlock::m_argumentValueProfiles. We don't need any padding
for growth, since we won't be appending to it anyway.

921 KB progression on <http://twitter.com/awesomekling>

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::setNumParameters):

Source/WTF:

Add Vector::resizeToFit(size), like resize() but without growth padding.

  • wtf/Vector.h:

(WTF::::resizeToFit):

8:44 AM Changeset in webkit [152847] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

fullscreen/full-screen-iframe-with-max-width-height.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=118820

Patch by Zalan Bujtas <Alan Bujtas> on 2013-07-18
Reviewed by Andreas Kling.

Don't start the test until after the iframe has finished loading.

  • fullscreen/full-screen-iframe-with-max-width-height-expected.txt:
  • fullscreen/full-screen-iframe-with-max-width-height.html:
  • platform/mac/TestExpectations:
8:39 AM Changeset in webkit [152846] by commit-queue@webkit.org
  • 5 edits in trunk

Only the first call to 'stop' method of AudioBufferSourceNode must be entertained.
https://bugs.webkit.org/show_bug.cgi?id=118776

Patch by Praveen R Jadhav <praveen.j@samsung.com> on 2013-07-18
Reviewed by Jer Noble.

Source/WebCore:

Subsequent calls to 'stop' for a AudioSourceBufferNode throws an exception.
End time set by first 'stop' method is used for processing.

No new tests. audiobuffersource-exception.html is updated.

  • Modules/webaudio/AudioScheduledSourceNode.cpp:

(WebCore::AudioScheduledSourceNode::stop):

LayoutTests:

Test case updated to check subsequent calls to 'stop' for a given AudioBufferSourceNode.

  • webaudio/audiobuffersource-exception-expected.txt:
  • webaudio/audiobuffersource-exception.html:
7:51 AM Changeset in webkit [152845] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Simplify SVG animated type handling in the JSC bindings generator
https://bugs.webkit.org/show_bug.cgi?id=118845

Reviewed by Kentaro Hara.

Simplify IsSVGAnimatedType subroutine in the bindings generator so that
we no longer need to hardcode SVG animated types. Also remove the
CanUseFastAttribute subroutine as it is equivalent to IsSVGAnimatedType.
This allows us to simplify the GetterExpression subroutine so that
we can use fastHasAttribute() unconditionally for boolean type.

No new tests, no behavior change.

  • bindings/scripts/CodeGenerator.pm:

(IsSVGAnimatedType):
(GetterExpression):

7:45 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
7:24 AM Changeset in webkit [152844] by Christophe Dumez
  • 14 edits in trunk/Source/WebCore

Use [ImplementedAs] instead of special casing in the bindings generators
https://bugs.webkit.org/show_bug.cgi?id=118848

Reviewed by Kentaro Hara.

In several instances, special casing were used in the bindings generator to avoid
name clashes in the implementation. The [ImplementedBy] IDL extended attribute is
meant to solve this issue so we now use it instead.

No new tests, no behavior change.

  • bindings/scripts/CodeGenerator.pm:

(WK_ucfirst):
(AttributeNameForGetterAndSetter):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(NativeToJSValue):

  • bindings/scripts/CodeGeneratorObjC.pm:

(GenerateHeader):
(GenerateImplementation):

  • svg/SVGAElement.idl:
  • svg/SVGFECompositeElement.cpp:

(WebCore::SVGFECompositeElement::SVGFECompositeElement):
(WebCore::SVGFECompositeElement::parseAttribute):
(WebCore::SVGFECompositeElement::setFilterEffectAttribute):
(WebCore::SVGFECompositeElement::build):

  • svg/SVGFECompositeElement.h:
  • svg/SVGFECompositeElement.idl:
  • svg/SVGFEMorphologyElement.cpp:

(WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
(WebCore::SVGFEMorphologyElement::parseAttribute):
(WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
(WebCore::SVGFEMorphologyElement::build):

  • svg/SVGFEMorphologyElement.h:
  • svg/SVGFEMorphologyElement.idl:
  • svg/SVGTransform.cpp:

(WebCore::SVGTransform::updateSVGMatrix):

  • svg/SVGTransform.h:
  • svg/SVGTransform.idl:
7:03 AM Changeset in webkit [152843] by zarvai@inf.u-szeged.hu
  • 5 edits in trunk/Source/WebKit/qt

[Qt][WK1] Mark failing API tests as XFAIL

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-18
Reviewed by Csaba Osztrogonác.

  • tests/qgraphicswebview/tst_qgraphicswebview.cpp:

(tst_QGraphicsWebView::widgetsRenderingThroughCache):
(tst_QGraphicsWebView::windowResizeEvent):

  • tests/qwebelement/tst_qwebelement.cpp:

(tst_QWebElement::addElementToHead):

  • tests/qwebframe/tst_qwebframe.cpp:

(tst_QWebFrame::setHtmlWithImageResource):
(tst_QWebFrame::setHtmlWithStylesheetResource):
(tst_QWebFrame::setHtmlWithJSAlert):

  • tests/qwebpage/tst_qwebpage.cpp:

(tst_QWebPage::geolocationRequestJS):
(tst_QWebPage::popupFormSubmission):
(tst_QWebPage::originatingObjectInNetworkRequests):
(tst_QWebPage::testStopScheduledPageRefresh):

6:05 AM Changeset in webkit [152842] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Unskip mathml tests after r152840.
https://bugs.webkit.org/show_bug.cgi?id=118842

Unreviewed.

Patch by Zalan Bujtas <Alan Bujtas> on 2013-07-18

  • platform/mac/TestExpectations:
4:01 AM WebKitGTK/WebKit2Roadmap edited by Anton Obzhirov
(diff)
2:35 AM Changeset in webkit [152841] by timothy_horton@apple.com
  • 29 edits in trunk/Source/WebKit2

Remove PDFViewController and WKView "custom representations"
https://bugs.webkit.org/show_bug.cgi?id=118720

Reviewed by Alexey Proskuryakov.

PDFViewController was the only implementation of
a "custom representation" for a WKView. As it has
been superceded by PDFPlugin, we can remove both
PDFViewController and the notion of a WKView custom
representation.

  • UIProcess/API/gtk/PageClientImpl.cpp:
  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/mac/PDFViewController.h: Removed.
  • UIProcess/API/mac/PDFViewController.mm: Removed.
  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:
  • UIProcess/API/mac/WKView.mm:

(-[WKView accessibilityFocusedUIElement]):
(-[WKView accessibilityHitTest:]):
(-[WKView accessibilityAttributeValue:]):
(-[WKView printOperationWithPrintInfo:forFrame:]):

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/API/qt/raw/qrawwebview_p_p.h:
  • UIProcess/CoordinatedGraphics/WebView.cpp:
  • UIProcess/CoordinatedGraphics/WebView.h:
  • UIProcess/DrawingAreaProxy.h:
  • UIProcess/DrawingAreaProxyImpl.cpp:
  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::supportsTextEncoding):
(WebKit::WebPageProxy::supportsTextZoom):
(WebKit::WebPageProxy::setTextZoomFactor):
(WebKit::WebPageProxy::setPageZoomFactor):
(WebKit::WebPageProxy::setPageAndTextZoomFactors):
(WebKit::WebPageProxy::findString):
(WebKit::WebPageProxy::countStringMatches):
(WebKit::WebPageProxy::didCommitLoadForFrame):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::textZoomFactor):
(WebKit::WebPageProxy::pageZoomFactor):

  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtPageClient.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
(WebKit::WebFrameLoaderClient::committedLoad):
(WebKit::WebFrameLoaderClient::finishedLoading):
(WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/DrawingArea.messages.in:
  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
(WebKit::DrawingAreaImpl::scroll):
(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
(WebKit::DrawingAreaImpl::display):

  • WebProcess/WebPage/DrawingAreaImpl.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::platformPreferencesDidChange):

  • mac/WebKit2.order:
2:09 AM Changeset in webkit [152840] by commit-queue@webkit.org
  • 10 edits
    2 adds in trunk

Incorrect calculated width for mspace.
https://bugs.webkit.org/show_bug.cgi?id=118601

Patch by Zalan Bujtas <Alan Bujtas> on 2013-07-18
Reviewed by Chris Fleizach.

Source/WebCore:

Use intrinsic logical widths to size <mspace> properly.
This patch also fixes an assert on isPreferredLogicalHeightDirty() which occurs
while layouting <mspace>. The assert fix is required, so that the sizing can be
fixed.

Test: mathml/presentation/mspace-prefered-width.html

  • rendering/mathml/RenderMathMLBlock.cpp:

(WebCore::parseMathMLLength): switch to LayoutUnits.
(WebCore::parseMathMLNamedSpace): switch to LayoutUnits.

  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::updateFromElement):

  • rendering/mathml/RenderMathMLFraction.h:
  • rendering/mathml/RenderMathMLSpace.cpp:

(WebCore::RenderMathMLSpace::computeIntrinsicLogicalWidths):

  • rendering/mathml/RenderMathMLSpace.h:

LayoutTests:

Use intrinsic logical widths to size <mspace> properly.
This patch also fixes an assert on isPreferredLogicalHeightDirty(), which occurs
while layouting <mspace>. The assert fix is required, so that the sizing can be
fixed.

  • mathml/presentation/mspace-prefered-width-expected.html: Added.
  • mathml/presentation/mspace-prefered-width.html: Added.
  • platform/mac/mathml/presentation/fractions-expected.png: Rebaseline: float->LayoutUnit.
  • platform/mac/mathml/presentation/fractions-expected.txt: Rebaseline: float->LayoutUnit.
1:45 AM Changeset in webkit [152839] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

willWriteSelectionToPasteboard and willPerformDragSourceAction editing callbacks are not called for drag and drop
https://bugs.webkit.org/show_bug.cgi?id=118828

Reviewed by Gavin Barraclough.

Call these two callbacks when we start a drag and drop.

No new tests for now but we should start logging these callbacks in DRT and WTR's EditorClients.

  • page/DragController.cpp:

(WebCore::DragController::startDrag):

1:28 AM Changeset in webkit [152838] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_color_picker.cpp
https://bugs.webkit.org/show_bug.cgi?id=118797

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-18
Reviewed by Christophe Dumez.

Some mouseClick methods are used in test_ewk2_color_picker.cpp.
But it is difficult to understand what they mean.
So i would like to replace those with more meaningful method for readability.

  • UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:

(EWK2ColorPickerTest::clickButton):
(TEST_F):

1:05 AM Changeset in webkit [152837] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Replace getRect() to pixelSnappedBoundingBox().
https://bugs.webkit.org/show_bug.cgi?id=118588

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2013-07-18
Reviewed by Noam Rosenthal.

The Node::getRect() function was removed in the
http://trac.webkit.org/changeset/128006, so use
pixelSnappedBoundingBox() instead.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::findZoomableAreaForPoint):

1:04 AM Changeset in webkit [152836] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk
ASSERTION FAILED: !listItems().size()
m_activeSelectionAnchorIndex >= 0 in WebCore::HTMLSelectElement::updateListBoxSelection

https://bugs.webkit.org/show_bug.cgi?id=118591

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-07-18
Reviewed by Kent Tamura.

Source/WebCore:

Test: fast/forms/select/selectall-command-crash.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::selectAll):
We should return this function if activeSelectionAnchorIndex is not valid index

LayoutTests:

  • fast/forms/select/selectall-command-crash-expected.txt: Added.
  • fast/forms/select/selectall-command-crash.html: Added.
1:01 AM Changeset in webkit [152835] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_context_menu.cpp
https://bugs.webkit.org/show_bug.cgi?id=118796

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-18
Reviewed by Christophe Dumez.

Some mouseClick methods are used in test_ewk2_context_menu.cpp.
But it is difficult to understand what they mean.
So i would like to replace those with more meaningful method for readability.

  • UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:

(EWK2ContextMenuTest::testContextMenu):
(EWK2ContextMenuTest::testContextMenuForRemoveAndAppend):
(EWK2ContextMenuTest::testContextMenuForSubmenu):
(EWK2ContextMenuTest::finishTest):
(EWK2ContextMenuTest::showContextMenu):
(TEST_F):

12:51 AM Changeset in webkit [152834] by ryuan.choi@samsung.com
  • 6 edits in trunk

[EFL] Refactor spin.edc not to use offset
https://bugs.webkit.org/show_bug.cgi?id=118830

Reviewed by Gyuyoung Kim.

Source/WebCore:

EDJE allows offset to specify the pixel based position,
but it's not good way if you want to locate object like arrow top or bottom.

Instead, this patch uses align property.

  • platform/efl/DefaultTheme/widget/spinner/spinner.edc:

LayoutTests:

Updated pixel tests reults.

  • platform/efl/fast/forms/number/number-appearance-rtl-expected.png:
  • platform/efl/fast/forms/number/number-appearance-spinbutton-disabled-readonly-expected.png:
  • platform/efl/fast/forms/number/number-appearance-spinbutton-layer-expected.png:
12:29 AM Changeset in webkit [152833] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_file_chooser_request.cpp
https://bugs.webkit.org/show_bug.cgi?id=118792

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-18
Reviewed by Christophe Dumez.

Some mouseClick methods are used in test_ewk2_file_chooser_request.cpp.
But it is difficult to understand what they mean.
So i would like to replace those with more meaningful method for readability.

  • UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:

(EWK2FileChooserRequestTest::clickFileInput):
(TEST_F):

12:27 AM Changeset in webkit [152832] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[gstreamer] Avoid calls to g_slist_index in webKitWebAudioSrcLoop()
https://bugs.webkit.org/show_bug.cgi?id=118827

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-07-18
Reviewed by Philippe Normand.

webKitWebAudioSrcLoop() currently calls g_slist_index for each element
to get its index in a list it's iterating over. g_list_index function uses
a sequential search to find that element, which is clearly unecessary.
This patch adds a local variable to store the current index and use it
instead of calling g_slist_index function.

No new tests, no behavior changes.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webKitWebAudioSrcLoop):

12:27 AM Changeset in webkit [152831] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Move all the static methods into EWK2TextCheckerTest in test_ewk2_text_checker.cpp
https://bugs.webkit.org/show_bug.cgi?id=118790

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-18
Reviewed by Christophe Dumez.

All the static methods should be moved to EWK2TextCheckerTest.

  • UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:

(EWK2TextCheckerTest::resetCallbacksExecutionStats):
(EWK2TextCheckerTest::onTimeout):
(EWK2TextCheckerTest::onSettingChange):
(EWK2TextCheckerTest::onSpellDocumentTag):
(EWK2TextCheckerTest::onSpellDocumentTagClose):
(EWK2TextCheckerTest::onSpellingCheck):
(EWK2TextCheckerTest::onSpellingForKnownWord):
(EWK2TextCheckerTest::onWordGuesses):
(EWK2TextCheckerTest::onWordLearn):
(EWK2TextCheckerTest::onWordIgnore):
(EWK2TextCheckerTest::findContextMenuItem):
(EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
(EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
(EWK2TextCheckerTest::checkClientSuggestionsForWord):
(EWK2TextCheckerTest::selectLearnSpelling):
(EWK2TextCheckerTest::selectIgnoreSpelling):
(EWK2TextCheckerTest::countContextMenuItems):
(EWK2TextCheckerTest::clickButton):
(EWK2TextCheckerTest::showContextMenu):
(EWK2TextCheckerTest::selectFirstWord):

Jul 17, 2013:

11:36 PM Changeset in webkit [152830] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Fix a typo in WebInspector.loaded
https://bugs.webkit.org/show_bug.cgi?id=118834

Patch by Seokju Kwon <Seokju Kwon> on 2013-07-17
Reviewed by Timothy Hatcher.

  • UserInterface/Main.js:

(WebInspector.loaded):

10:16 PM Changeset in webkit [152829] by fpizlo@apple.com
  • 8 edits
    2 adds in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Add a phase to create loop pre-headers
https://bugs.webkit.org/show_bug.cgi?id=118778

Reviewed by Oliver Hunt.

Add a loop pre-header creation phase. Any loop that doesn't already have
just one predecessor that isn't part of the loop has a pre-header
prepended. All non-loop predecessors then jump to that pre-header.

Also fix a handful of bugs:

  • DFG::Analysis should set m_valid before running the analysis, since that makes it easier to use ASSERT(m_valid) in the analysis' methods, which may be called by the analysis before the analysis completes. NaturalLoops does this with loopsOf().


  • NaturalLoops::headerOf() was missing a check for innerMostLoopOf() returning 0, since that'll happen if the block isn't in any loop.


  • Change BlockInsertionSet to dethread the graph, since anyone using it will want to do so.


  • Change dethreading to ignore SSA form graphs.


This also adds NaturalLoops::belongsTo(), which I always used in the
pre-header creation phase. I didn't end up using it but I'll probably use
it in the near future.

(JSC::DFG::Analysis::computeIfNecessary):

  • dfg/DFGBlockInsertionSet.cpp:

(JSC::DFG::BlockInsertionSet::execute):

  • dfg/DFGCriticalEdgeBreakingPhase.cpp:

(JSC::DFG::CriticalEdgeBreakingPhase::breakCriticalEdge):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dethread):

  • dfg/DFGLoopPreHeaderCreationPhase.cpp: Added.

(DFG):
(LoopPreHeaderCreationPhase):
(JSC::DFG::LoopPreHeaderCreationPhase::LoopPreHeaderCreationPhase):
(JSC::DFG::LoopPreHeaderCreationPhase::run):
(JSC::DFG::performLoopPreHeaderCreation):

  • dfg/DFGLoopPreHeaderCreationPhase.h: Added.

(DFG):

  • dfg/DFGNaturalLoops.h:

(NaturalLoop):
(JSC::DFG::NaturalLoops::headerOf):
(JSC::DFG::NaturalLoops::innerMostLoopOf):
(JSC::DFG::NaturalLoops::innerMostOuterLoop):
(JSC::DFG::NaturalLoops::belongsTo):
(NaturalLoops):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThreadImpl):

9:38 PM Changeset in webkit [152828] by fpizlo@apple.com
  • 7 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Rationalize Node::replacement
https://bugs.webkit.org/show_bug.cgi?id=118774

Reviewed by Oliver Hunt.

  • Clearing of replacements is now done in Graph::clearReplacements().


  • New nodes now have replacement set to 0.


  • dfg/DFGCPSRethreadingPhase.cpp:

(JSC::DFG::CPSRethreadingPhase::run):
(JSC::DFG::CPSRethreadingPhase::freeUnnecessaryNodes):
(JSC::DFG::CPSRethreadingPhase::canonicalizeGetLocalFor):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::run):
(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::performBlockCSE):

  • dfg/DFGGraph.cpp:

(DFG):
(JSC::DFG::Graph::clearReplacements):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::performSubstitutionForEdge):
(Graph):

  • dfg/DFGNode.h:

(JSC::DFG::Node::Node):

  • dfg/DFGSSAConversionPhase.cpp:

(JSC::DFG::SSAConversionPhase::run):

7:13 PM Changeset in webkit [152827] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebCore

Introduce toSVGInlineFlowBox() and use it
https://bugs.webkit.org/show_bug.cgi?id=118794

Reviewed by Andreas Kling.

As a step to change static_cast with toSVGXXX, static_cast<SVGInlineFlowBox*> can
be changed with toSVGInlineFlowBox().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=154385

No new tests, no behavior change.

  • rendering/svg/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::paintSelectionBackground):

  • rendering/svg/SVGInlineFlowBox.h:

(WebCore::toSVGInlineFlowBox):

  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::paint):
(WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
(WebCore::SVGRootInlineBox::layoutChildBoxes):

7:12 PM Changeset in webkit [152826] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebCore

Use toSVGMarkerElement() instead of static_cast<>
https://bugs.webkit.org/show_bug.cgi?id=118800

Reviewed by Andreas Kling.

Though there is toSVGMarkerElement(), some files still use static_cast<SVGMarkerElement*>.
To remove all static_cast<> use, we need to change argument from SVGElement to Node.

No new tests, no behavior changes.

  • rendering/svg/RenderSVGResourceMarker.cpp:

(WebCore::RenderSVGResourceMarker::referencePoint):
(WebCore::RenderSVGResourceMarker::angle):
(WebCore::RenderSVGResourceMarker::markerTransformation):
(WebCore::RenderSVGResourceMarker::viewportTransform):
(WebCore::RenderSVGResourceMarker::calcViewport):

  • rendering/svg/RenderSVGResourceMarker.h:

(WebCore::RenderSVGResourceMarker::markerUnits):

  • svg/SVGMarkerElement.h:

(WebCore::toSVGMarkerElement):

6:02 PM Changeset in webkit [152825] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Dereference null pointer crash in Length::decrementCalculatedRef()
https://bugs.webkit.org/show_bug.cgi?id=118686

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-07-17
Reviewed by Simon Fraser.

Source/WebCore:

Length(Calculated) won't insert any CalculationValue to CalculationValueHandleMap;
therefore, we dereference null CalculationValue pointer when the temporary
Length object goes out of the scope.
Length(Calculated) is not allowed as it doesn't make sense that we construct
a Calculated Length object with uninitialized calc expression.
The code just wants to blend with zero. To fix the bug, we can just blend
with Length(0, Fixed) here as we currently can blend different type units
and zero has the same behavior regardless of unit.

Test: transitions/transition-transform-translate-calculated-length-crash.html

  • platform/graphics/transforms/TranslateTransformOperation.cpp:

(WebCore::TranslateTransformOperation::blend):

LayoutTests:

  • transitions/transition-transform-translate-calculated-length-crash-expected.txt: Added.
  • transitions/transition-transform-translate-calculated-length-crash.html: Added.
5:43 PM Changeset in webkit [152824] by timothy_horton@apple.com
  • 18 edits in trunk

Update blocked/missing plug-in UI
https://bugs.webkit.org/show_bug.cgi?id=118347
<rdar://problem/14209318>

Reviewed by Sam Weinig.

  • WebCore.exp.in:

Export RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription.

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::replacementTextRoundedRectPressedColor):
(WebCore::replacementTextRoundedRectColor):
(WebCore::replacementTextColor):
Change colors to new design and add some more constants.

(WebCore::shouldUnavailablePluginMessageBeButton): Added.

(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription): Added.
(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
Call through to the -WithDescription variant.

(WebCore::RenderEmbeddedObject::paintReplaced):
Fill the background, and otherwise match the new design.

(WebCore::addReplacementArrowPath):
Add an arrow to the given path, inside the given rect.

(WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
Add a 1px padding to the bottom of the text.
Add a circle and an arrow into the indicator as per the new design.

(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
Hit-test the indicator arrow as well; otherwise, the fact that the arrow
is a hole in the path means it won't be hit.

  • rendering/RenderEmbeddedObject.h:
  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::callMemberFunction):
Add a 6 argument -> 4 reply message handler.
(It seems that FindPlugin is getting a little out of hand.)

  • Shared/APIClientTraits.cpp:
  • Shared/APIClientTraits.h:
  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::pluginLoadPolicy):

  • UIProcess/WebLoaderClient.h:

Add an unavailability description out-argument to a new version of
pluginLoadPolicy, so clients can override the text of the unavailable
plugin indicator. Bump the WKPageLoaderClient version and update APIClientTraits.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:

Plumb the unavailability description through to the WebProcess via
the FindPlugin message.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):
Acquire the unavailability description from the client
(via FindPlugin) and hand it to the RenderEmbeddedObject.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions):
Match new WKPageLoaderClient entry.

5:35 PM Changeset in webkit [152823] by Brent Fulgham
  • 2 edits in trunk/Websites/planet.webkit.org

Another attempt to make planet cron job happy

5:30 PM Changeset in webkit [152822] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

Skip crashing MathML tests while waiting for a fix for
https://bugs.webkit.org/show_bug.cgi?id=118601

Unreviewed.

  • platform/mac/TestExpectations:
5:23 PM Changeset in webkit [152821] by achristensen@apple.com
  • 5 edits in trunk/Source/ThirdParty/ANGLE

Made a repeatable process for updating ANGLE that does not include manually editing any files.
https://bugs.webkit.org/show_bug.cgi?id=118815

Reviewed by Dean Jackson.

  • src/compiler/glslang.y:
  • src/compiler/glslang_lex.cpp:
  • src/compiler/glslang_tab.cpp:
  • src/compiler/glslang_tab.h: Put YYLTYPE definition in %union instead of prologue and ran Bison.
4:54 PM Changeset in webkit [152820] by Lucas Forschler
  • 2 edits in tags/Safari-537.51.1/Source/JavaScriptCore

Rollout of r152600. <rdar://problem/14474400>

4:53 PM Changeset in webkit [152819] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/JavaScriptCore

Rollout of r152600. <rdar://problem/14474400>

4:43 PM Changeset in webkit [152818] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, fix 32-bit after http://trac.webkit.org/changeset/152813

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileNewFunctionNoCheck):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

4:41 PM Changeset in webkit [152817] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

API tests should test for JSStringCreateWithCFString with empty string
https://bugs.webkit.org/show_bug.cgi?id=118819

Reviewed by Mark Hahnenberg.

  • API/tests/testapi.c:

(main): Test!

4:37 PM Changeset in webkit [152816] by benjamin@webkit.org
  • 3 edits in trunk/Source/WTF

Add a thread safety assertion when creating an AtomicString from a StringImpl
https://bugs.webkit.org/show_bug.cgi?id=118637

Reviewed by Sam Weinig.

The goal is to prevent this kind of use:
-Someone create a String from a StringImpl.
-At some point, the string becomes atomic.
-Later, when the string only has one ref, its ownership is 'passed' to an other thread

without checking String::isSafeToSendToAnotherThread().

-In the thread B, an AtomicString is created from the String.
->The AtomicString's StringImpl returned is not in the current thread string table.

  • wtf/text/AtomicString.cpp:

(WTF::AtomicString::isInAtomicStringTable):

  • wtf/text/AtomicString.h:

(WTF::AtomicString::add):

4:34 PM Changeset in webkit [152815] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Simplify AtomicString::lower()
https://bugs.webkit.org/show_bug.cgi?id=118719
<rdar://problem/14452883>

Reviewed by Gavin Barraclough.

  • wtf/text/AtomicString.cpp:

(WTF::AtomicString::lower): Previously, the code was using a copy constructor for two path
and one regular construction in another path.
Just put the StringImpl where it needs to be instead.

4:32 PM Changeset in webkit [152814] by commit-queue@webkit.org
  • 44 edits
    1 delete in trunk

Unreviewed, rolling out r152701, r152703, r152739, r152754,
and r152756.
http://trac.webkit.org/changeset/152701
http://trac.webkit.org/changeset/152703
http://trac.webkit.org/changeset/152739
http://trac.webkit.org/changeset/152754
http://trac.webkit.org/changeset/152756
https://bugs.webkit.org/show_bug.cgi?id=118821

this was a buggy fix and we're going to try something
different (Requested by thorton on #webkit).

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • css/unavailablePlugIns.css: Removed.
  • dom/EventListener.h:
  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::updateWidget):

  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::defaultEventHandler):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::createJavaAppletWidget):

  • page/ChromeClient.h:

(WebCore::ChromeClient::shouldUnavailablePluginMessageBeButton):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::replacementTextRoundedRectPressedColor):
(WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
(WebCore::RenderEmbeddedObject::setUnavailablePluginIndicatorIsPressed):
(WebCore::RenderEmbeddedObject::paint):
(WebCore::RenderEmbeddedObject::paintReplaced):
(WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
(WebCore::RenderEmbeddedObject::replacementTextRect):
(WebCore::RenderEmbeddedObject::isReplacementObscured):
(WebCore::RenderEmbeddedObject::layout):
(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
(WebCore::shouldUnavailablePluginMessageBeButton):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
(WebCore::RenderEmbeddedObject::getCursor):
(WebCore::RenderEmbeddedObject::canHaveChildren):

  • rendering/RenderEmbeddedObject.h:
  • rendering/RenderWidget.h:

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::shouldUnavailablePluginMessageBeButton):

Source/WebKit2:

  • Platform/CoreIPC/HandleMessage.h:
  • Shared/APIClientTraits.cpp:
  • Shared/APIClientTraits.h:
  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::pluginLoadPolicy):

  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::didClose):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::pluginProcessCrashed):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::shouldUnavailablePluginMessageBeButton):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):
(WebKit::WebPage::canPluginHandleResponse):

Tools:

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions):

LayoutTests:

  • editing/pasteboard/paste-noplugin-expected.txt:
  • http/tests/security/contentSecurityPolicy/object-src-url-blocked-expected.txt:
  • platform/mac/accessibility/plugin-expected.txt:
4:27 PM Changeset in webkit [152813] by fpizlo@apple.com
  • 12 edits
    12 adds in trunk

DFG assumes that NewFunction will never pass its input through
https://bugs.webkit.org/show_bug.cgi?id=118798

Source/JavaScriptCore:

Reviewed by Sam Weinig.

Previously the DFG was assuming that NewFunction always returns a function. That's not
the case. It may return whatever was passed to it, if it wasn't passed SpecEmpty.

This fact needed to be wired through the compiler.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::makeTop):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Sam Weinig.

  • fast/js/dfg-use-function-as-variable-expected.txt: Added.
  • fast/js/dfg-use-function-as-variable-merge-structure-expected.txt: Added.
  • fast/js/dfg-use-function-as-variable-merge-structure.html: Added.
  • fast/js/dfg-use-function-as-variable-not-constant-expected.txt: Added.
  • fast/js/dfg-use-function-as-variable-not-constant.html: Added.
  • fast/js/dfg-use-function-as-variable-with-closure-expected.txt: Added.
  • fast/js/dfg-use-function-as-variable-with-closure.html: Added.
  • fast/js/dfg-use-function-as-variable.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-use-function-as-variable-merge-structure.js: Added.

(.x):
(run_tests):

  • fast/js/script-tests/dfg-use-function-as-variable-not-constant.js: Added.

(run_tests.x):
(run_tests):

  • fast/js/script-tests/dfg-use-function-as-variable-with-closure.js: Added.

(run_tests.x):
(run_tests.y):
(run_tests):

  • fast/js/script-tests/dfg-use-function-as-variable.js: Added.

(run_tests.x):
(run_tests):

4:27 PM Changeset in webkit [152812] by Brent Fulgham
  • 2 edits in trunk/Websites/planet.webkit.org

Correct webkit.org blog RSS address.

4:06 PM Changeset in webkit [152811] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/JavaScriptCore

Merged r152600. <rdar://problem/14474400>

4:05 PM Changeset in webkit [152810] by Lucas Forschler
  • 2 edits in tags/Safari-537.51.1/Source/JavaScriptCore

Merged r152600. <rdar://problem/14474400>

4:04 PM Changeset in webkit [152809] by achristensen@apple.com
  • 3 edits in trunk/LayoutTests

Unreviewed. Skip more failing WebGL tests on Mac.

  • platform/mac-lion/TestExpectations:
  • platform/mac/TestExpectations:
4:02 PM Changeset in webkit [152808] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

fullscreen/full-screen-iframe-with-max-width-height.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=118820

Unreviewed.

Label a flaky test as flaky

  • platform/mac/TestExpectations:
3:14 PM Changeset in webkit [152807] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

JSStringCreateWithCFString should not convert the empty string into the NULL string
https://bugs.webkit.org/show_bug.cgi?id=118816

Reviewed by Sam Weinig.

  • API/JSStringRef.cpp:

(JSStringCreateWithUTF8CString): Removed an extraneous comment, which
a previous version of the patch made incorrect.

  • API/JSStringRefCF.cpp:

(JSStringCreateWithCFString): Don't convert the empty string into the
null string.

3:08 PM Changeset in webkit [152806] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Optimize RenderLayerCompositor's OverlapMap
https://bugs.webkit.org/show_bug.cgi?id=118764

Reviewed by Tim Horton.

Overlap stack items can have RectLists with hundreds of rectangles.
This makes the linear search in OverlapMap::overlapsLayers() very slow.

Optimize by storing the bounding rect of the list of rects, and doing an early
check on that. This reduces time spent in RenderLayer::scrollTo() by 13% in some
content with lots of layers inside an overflow:scroll.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
(WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
(WebCore::RenderLayerCompositor::OverlapMap::RectList::append):
(WebCore::RenderLayerCompositor::OverlapMap::RectList::intersects):

3:05 PM Changeset in webkit [152805] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Crashes in CFURLGetBytes under WebProcess::updateActivePages()
https://bugs.webkit.org/show_bug.cgi?id=118814
<rdar://problem/14173389>

Reviewed by Brady Eidson.

Speculative fix. It's unclear how we end up with an invalid URL when committing
a load.

  • WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::updateActivePages): Added a null check.
2:48 PM Changeset in webkit [152804] by Lucas Forschler
  • 5 edits in tags/Safari-537.51.1/Source

Versioning

2:22 PM Changeset in webkit [152803] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening after r152800.
https://bugs.webkit.org/show_bug.cgi?id=118810.

CSS_SHAPES not yet supported on AppleWin port.

  • platform/win/TestExpectations:
2:16 PM Changeset in webkit [152802] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.
Skip some tests on AppleWin port that requires AVFoundation, since it does not support it yet.

  • platform/win/TestExpectations:
1:42 PM Changeset in webkit [152801] by roger_fong@apple.com
  • 2 edits
    1 add in trunk/LayoutTests

Unreviewed. Rebaseline tests for AppleWin port after r152789.

  • platform/win/editing/pasteboard/paste-noplugin-expected.txt: Added.
  • platform/win/platform/win/plugins/draws-gradient-expected.txt:
1:31 PM Changeset in webkit [152800] by betravis@adobe.com
  • 9 edits
    5 copies
    202 moves
    6 adds in trunk/LayoutTests

[CSS Shapes][CSS Exclusions] Cleanup tests to reflect split between CSS Shapes and CSS Exclusions
https://bugs.webkit.org/show_bug.cgi?id=117164

Reviewed by Alexandru Chiculita.

Moving shapes tests from the fast/exclusions directory to the new fast/shapes directory.
In addition, some parsing tests which included both exclusions and shapes properties
have been split in order for each piece of functionality to sit within its own directory.

  • fast/exclusions/parsing/script-tests/parsing-test-utils.js:
  • fast/shapes/css-shapes-disabled-expected.txt: Added.
  • fast/shapes/css-shapes-disabled.html: Added.
  • fast/shapes/css-shapes-enabled-expected.txt: Added.
  • fast/shapes/css-shapes-enabled.html: Added.
  • fast/shapes/parsing/parsing-shape-inside-expected.txt: Added.
  • fast/shapes/parsing/parsing-shape-inside.html: Added.
  • fast/shapes/parsing/parsing-shape-lengths-expected.txt: Added.
  • fast/shapes/parsing/parsing-shape-lengths.html: Added.
  • fast/shapes/parsing/parsing-shape-margin-expected.txt: Added.
  • fast/shapes/parsing/parsing-shape-margin.html: Added.
  • fast/shapes/parsing/parsing-shape-outside-expected.txt: Added.
  • fast/shapes/parsing/parsing-shape-outside.html: Added.
  • fast/shapes/parsing/parsing-shape-padding-expected.txt: Added.
  • fast/shapes/parsing/parsing-shape-padding.html: Added.
  • fast/shapes/parsing/script-tests/parsing-shape-inside.js: Added.
  • fast/shapes/parsing/script-tests/parsing-shape-lengths.js: Added.
  • fast/shapes/parsing/script-tests/parsing-shape-margin.js: Added.
  • fast/shapes/parsing/script-tests/parsing-shape-outside.js: Added.
  • fast/shapes/parsing/script-tests/parsing-shape-padding.js: Added.
  • fast/shapes/parsing/script-tests/parsing-test-utils.js: Added.
  • fast/shapes/resources/multi-segment-polygon.js: Added.
  • fast/shapes/resources/rounded-rectangle.js: Added.
  • fast/shapes/resources/simple-polygon.js: Added.
  • fast/shapes/resources/simple-rectangle.js: Added.
  • fast/shapes/resources/subpixel-utils.js: Added.
  • fast/shapes/shape-inside/shape-inside-animation-expected.txt: Added.
  • fast/shapes/shape-inside/shape-inside-animation.html: Added.
  • fast/shapes/shape-inside/shape-inside-bottom-edge-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-bottom-edge.html: Added.
  • fast/shapes/shape-inside/shape-inside-box-sizing-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-box-sizing.html: Added.
  • fast/shapes/shape-inside/shape-inside-circle-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-circle-padding-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-circle-padding.html: Added.
  • fast/shapes/shape-inside/shape-inside-circle.html: Added.
  • fast/shapes/shape-inside/shape-inside-coincident-vertices-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-coincident-vertices.html: Added.
  • fast/shapes/shape-inside/shape-inside-collinear-vertices-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-collinear-vertices.html: Added.
  • fast/shapes/shape-inside/shape-inside-counterclockwise-polygon-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-counterclockwise-polygon.html: Added.
  • fast/shapes/shape-inside/shape-inside-dynamic-nested-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-dynamic-nested.html: Added.
  • fast/shapes/shape-inside/shape-inside-dynamic-shape-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-dynamic-shape.html: Added.
  • fast/shapes/shape-inside/shape-inside-dynamic-text-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-dynamic-text.html: Added.
  • fast/shapes/shape-inside/shape-inside-ellipse-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-ellipse-padding-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-ellipse-padding.html: Added.
  • fast/shapes/shape-inside/shape-inside-ellipse.html: Added.
  • fast/shapes/shape-inside/shape-inside-empty-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-empty-segments-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-empty-segments.html: Added.
  • fast/shapes/shape-inside/shape-inside-empty.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-vertical-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-vertical.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-003-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-004-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-004.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-reflex-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-first-fit-reflex.html: Added.
  • fast/shapes/shape-inside/shape-inside-floats-simple-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-floats-simple.html: Added.
  • fast/shapes/shape-inside/shape-inside-inline-elements-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-inline-elements.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-003-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-004-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-004.html: Added.
  • fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height.html: Added.
  • fast/shapes/shape-inside/shape-inside-outside-shape-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-outside-shape.html: Added.
  • fast/shapes/shape-inside/shape-inside-overflow-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html: Added.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html: Added.
  • fast/shapes/shape-inside/shape-inside-overflow.html: Added.
  • fast/shapes/shape-inside/shape-inside-partial-fill-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-partial-fill-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-partial-fill-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-partial-fill-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-percentage-auto-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-percentage-auto.html: Added.
  • fast/shapes/shape-inside/shape-inside-percentage-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-percentage.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-layout-expected.txt: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-layout.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-002-expected.txt: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-003-expected.txt: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-rectangle-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-rectangle.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-zoom-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-polygon-zoom.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectangle-padding-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectangle-padding.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004.html: Added.
  • fast/shapes/shape-inside/shape-inside-recursive-layout-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-recursive-layout.html: Added.
  • fast/shapes/shape-inside/shape-inside-regular-polygon16-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-regular-polygon16.html: Added.
  • fast/shapes/shape-inside/shape-inside-regular-polygon8-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-regular-polygon8.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-003-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-004-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-004.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-003-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-large-radius-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-large-radius.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-padding-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-rounded-rectangle-padding.html: Added.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top.html: Added.
  • fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-001-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-001.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-002-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-002.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-003-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-003.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-004-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-004.html: Added.
  • fast/shapes/shape-inside/shape-inside-subsequent-blocks-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-subsequent-blocks.html: Added.
  • fast/shapes/shape-inside/shape-inside-text-align-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-text-align.html: Added.
  • fast/shapes/shape-inside/shape-inside-text-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-text.html: Added.
  • fast/shapes/shape-inside/shape-inside-vertical-text-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-vertical-text.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-diamond-margin-polygon-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-diamond-margin-polygon.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-bottom-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-bottom.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-left-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-left.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-right-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-right.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-left-margin-polygon-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-left-margin-polygon.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-right-margin-polygon-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-right-margin-polygon.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-rounded-rectangle-large-radius-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-rounded-rectangle-large-radius.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-circle-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-circle.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-ellipse-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-ellipse.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-inset-rectangle-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-inset-rectangle-percentage-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-inset-rectangle-percentage.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-inset-rectangle.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-polygon-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-polygon.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-inset-rectangle-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-inset-rectangle.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-003-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-003.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-stacked-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-stacked.html: Added.
12:53 PM Changeset in webkit [152799] by Lucas Forschler
  • 5 edits
    3 copies in branches/safari-537-branch

Merged r152742. <rdar://problem/14202134>

12:52 PM Changeset in webkit [152798] by Lucas Forschler
  • 5 edits
    3 copies in tags/Safari-537.51.1

Merged r152742. <rdar://problem/14202134>

12:49 PM Changeset in webkit [152797] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r152740. <rdar://problem/14300350>

12:48 PM Changeset in webkit [152796] by Lucas Forschler
  • 2 edits in tags/Safari-537.51.1/Source/WebKit2

Merged r152740. <rdar://problem/14300350>

12:31 PM Changeset in webkit [152795] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit2

Unreviewed, rolling out r152786 and r152789.
http://trac.webkit.org/changeset/152786
http://trac.webkit.org/changeset/152789
https://bugs.webkit.org/show_bug.cgi?id=118807

overly platform specific and dirty API (and Sam says no)
(Requested by thorton on #webkit).

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
  • WebProcess/WebPage/PageOverlay.cpp:
  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
12:24 PM Changeset in webkit [152794] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[CSS Shapes] Port refactoring of shape-outside code from Blink
https://bugs.webkit.org/show_bug.cgi?id=118757

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-07-17
Reviewed by Dean Jackson.

Refactor the left and right offset methods to reduce the number of
arguments by splitting the methods into smaller methods. This
refactoring was requested as part of porting support for stacked
floats with shape-outside to Blink.

Also add a variable when calling computeSegmentsForLine to make it
more readable and easier to follow the coordinate system change.

No new tests, no behavior change.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeLogicalLocationForFloat): Update to use

the refactored IgnoringShapeOutside methods.

(WebCore::RenderBlock::logicalLeftFloatOffsetForLine): New method to

compute the offset contributed by left floats.

(WebCore::RenderBlock::adjustLogicalLeftOffsetForLine): New method to

compute misc adjustments to the left offset.

(WebCore::RenderBlock::logicalRightFloatOffsetForLine): New method to

compute the offset contributed by right floats.

(WebCore::RenderBlock::adjustLogicalRightOffsetForLine): New method to

compute misc adjustments to the right offset.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::logicalRightOffsetForLine): Implement original

method in terms of the float offset computation method and the
offset adjustment method. This method takes into account the
shape-outside on any floats when computing the offset.

(WebCore::RenderBlock::logicalLeftOffsetForLine): Ditto.
(WebCore::RenderBlock::logicalRightOffsetForLineIgnoringShapeOutside):

Compute the right offset as if there was no shape-outside on any
of the floats.

(WebCore::RenderBlock::logicalLeftOffsetForLineIgnoringShapeOutside):

Compute the left offset as if there was no shape-outside on any
of the floats.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update

to use a variable to make the calls to computeSegmentsForLine more
explicit about the coordinate system conversion.

11:46 AM Changeset in webkit [152793] by akling@apple.com
  • 7 edits
    2 adds in trunk

Wrong linebox height, when block element parent has vertical-align property defined.
https://bugs.webkit.org/show_bug.cgi?id=118245

Patch by Zalan Bujtas <Alan Bujtas> on 2013-07-17
Reviewed by David Hyatt.

Do not push the current element to the next, when it is still considered empty, even with
some object(s) in front. Behave as if it was actually empty.
Inline elements like <span></span> generate such lines.

Source/WebCore:

Test: fast/css/empty-span-with-parent-div-and-vertical-align.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

LayoutTests:

  • fast/css/empty-span-with-parent-div-and-vertical-align-expected.html: Added.
  • fast/css/empty-span-with-parent-div-and-vertical-align.html: Added.
  • platform/mac/fast/lists/inlineBoxWrapperNullCheck-expected.png: Rebased.
  • platform/mac/fast/lists/inlineBoxWrapperNullCheck-expected.txt: Rebased.
  • platform/mac/tables/mozilla/marvin/backgr_index-expected.png: Rebased.
  • platform/mac/tables/mozilla/marvin/backgr_index-expected.txt: Rebased.
11:35 AM Changeset in webkit [152792] by Lucas Forschler
  • 1 copy in tags/Safari-537.51.1

New Tag.

11:07 AM Changeset in webkit [152791] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r151535.
http://trac.webkit.org/changeset/151535
https://bugs.webkit.org/show_bug.cgi?id=118804

Re-disable WinEWS tests (Requested by rfong on #webkit).

  • Scripts/webkitpy/common/config/ews.json:
10:59 AM Changeset in webkit [152790] by achristensen@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip failing WebGL tests.

  • platform/mac/TestExpectations:
10:38 AM Changeset in webkit [152789] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

AX: VoiceOver not working with data detection page overlays
https://bugs.webkit.org/show_bug.cgi?id=118680

Reviewed by Anders Carlsson.

Bump the API version after r152786.

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
10:21 AM Changeset in webkit [152788] by akling@apple.com
  • 11 edits in trunk

CSS selector list splitting should be by component, not by selector.
<http://webkit.org/b/118761>
<rdar://problem/14421609>

Reviewed by Antti Koivisto.

Source/WebCore:

Test (amended): fast/css/rule-selector-overflow.html

  • css/CSSSelectorList.h:
  • css/CSSSelectorList.cpp:

(WebCore::CSSSelectorList::CSSSelectorList):
(WebCore::CSSSelectorList::componentCount):

  • css/CSSStyleRule.cpp:

(WebCore::CSSStyleRule::setSelectorText):

Renamed CSSSelectorList::length() to componentCount() and made it public.

  • css/RuleSet.h:

maximumSelectorCount => maximumSelectorComponentCount

  • css/StyleRule.cpp:

(WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount):

Make the splits after accumulating 'maximumSelectorComponentCount' components.

  • css/StyleRule.h:
  • css/StyleSheetContents.cpp:

(WebCore::StyleSheetContents::parserAppendRule):

splitIntoMultipleRulesWithMaximumSelectorCount => splitIntoMultipleRulesWithMaximumSelectorComponentCount

LayoutTests:

Added more cases to the already existing selector list splitting test.

  • fast/css/rule-selector-overflow-expected.txt:
  • fast/css/rule-selector-overflow.html:
10:10 AM Changeset in webkit [152787] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

YouTube webcam capture (Flash Plug-in) in Safari can't see built-in camera
https://bugs.webkit.org/show_bug.cgi?id=118787
<rdar://problem/14418799>

Patch by Simon Cooper <scooper@apple.com> on 2013-07-17
Reviewed by Alexey Proskuryakov.

Add support for built-in cameras, including the original iSight.

  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
  • Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
9:44 AM Changeset in webkit [152786] by Chris Fleizach
  • 8 edits in trunk/Source/WebKit2

AX: VoiceOver not working with data detection page overlays
https://bugs.webkit.org/show_bug.cgi?id=118680

Reviewed by Tim Horton.

Expose API methods so that a client implementing data detectors is able to respond
to the needs of accessibility clients like VoiceOver.

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:

(PageOverlayClientImpl::supportsDataDetection):
(PageOverlayClientImpl::dataDetectorExistsAtPoint):
(PageOverlayClientImpl::dataDetectorCopyTypeAtPoint):
(PageOverlayClientImpl::showDataDetectorMenuAtPoint):

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
  • WebProcess/WebPage/PageOverlay.cpp:

(WebKit::PageOverlay::supportsDataDetection):
(WebKit::PageOverlay::dataDetectorExistsAtPoint):
(WebKit::PageOverlay::dataDetectorCopyTypeAtPoint):
(WebKit::PageOverlay::dataDetectorOpenMenuAtPoint):

  • WebProcess/WebPage/PageOverlay.h:

(WebKit::PageOverlay::Client::supportsDataDetection):
(WebKit::PageOverlay::Client::dataDetectorExistsAtPoint):
(WebKit::PageOverlay::Client::dataDetectorCopyTypeAtPoint):
(WebKit::PageOverlay::Client::showDataDetectorMenuAtPoint):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::pageOverlayOpenDataDetectorMenuAtPoint):
(WebKit::WebPage::pageOverlayDataDetectorCopyTypeAtPoint):
(WebKit::WebPage::pageOverlayDataDetectorExistsAtPoint):
(WebKit::WebPage::pageOverlaySupportsDataDetection):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:

(-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
(-[WKAccessibilityWebPageObject _convertScreenPointToWindow:]):
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):

9:40 AM Changeset in webkit [152785] by rwlbuis@webkit.org
  • 5 edits in trunk

[Mac] REGRESSION(r152685): svg/custom/xlink-prefix-in-attributes.html failed unexpectedly
https://bugs.webkit.org/show_bug.cgi?id=118701

Reviewed by Ryosuke Niwa.

Source/WebCore:

Use the computed attribute prefix, otherwise href being in xlink namespace but not having any prefix
will cause outputting the xlink namespace in appendNamespace.

Patch fixes svg/custom/xlink-prefix-in-attributes.html.

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::appendAttribute):

LayoutTests:

  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
9:26 AM Changeset in webkit [152784] by commit-queue@webkit.org
  • 8 edits in trunk/Source/JavaScriptCore

Naming convention on createInvalidParamError is incorrect.
https://bugs.webkit.org/show_bug.cgi?id=118756

Patch by Chris Curtis <chris_curtis@apple.com> on 2013-07-17
Reviewed by Geoffrey Garen.

Changed the naming of createInvalidParamError to createInvalidParameterError.
This corrects the naming convention for the function listed in the WebKit code styling.

  • interpreter/Interpreter.cpp:

(JSC::loadVarargs):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::opIn):

  • runtime/ExceptionHelpers.cpp:

(JSC::createInvalidParameterError):

  • runtime/ExceptionHelpers.h:
  • runtime/JSObject.cpp:

(JSC::JSObject::hasInstance):

9:15 AM Changeset in webkit [152783] by Chris Fleizach
  • 3 edits
    2 adds in trunk

Regression: columnheader/rowheader roles not exposed correctly
https://bugs.webkit.org/show_bug.cgi?id=113628

Reviewed by Tim Horton.

Source/WebCore:

When we determine the row and column headers we look at the ARIA role being returned, but
since TableCell overrides the determineAccessibilityRole method, the ARIA role is never set.

Test: platform/mac/accessibility/aria-columnrowheaders.html

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::determineAccessibilityRole):

LayoutTests:

  • platform/mac/accessibility/aria-columnrowheaders-expected.txt: Added.
  • platform/mac/accessibility/aria-columnrowheaders.html: Added.
8:34 AM Changeset in webkit [152782] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK] Make DRT obbey testRunner's addURLToRedirect
https://bugs.webkit.org/show_bug.cgi?id=118239

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-17
Reviewed by Gustavo Noronha Silva.

Tools:

Support testRunner's addURLToRedirect in GTK's DRT, so it redirects
to the proper URI when indicated.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(willSendRequestCallback):

LayoutTests:

Unskip http/tests/loading/cross-origin-XHR-willLoadRequest.html now that DRT obbeys
testRunner's addURLToRedirect.

  • platform/gtk/TestExpectations:
8:23 AM WebKitGTK/WebKit2Roadmap edited by brian.holt@samsung.com
Brian to implement authentication dialog API (diff)
6:54 AM Changeset in webkit [152781] by zarvai@inf.u-szeged.hu
  • 2 edits
    2 adds in trunk/LayoutTests

[Qt] Unreviewd gardening. Rebase and skip failing tests.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-17

  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt-5.0-wk2/fast/replaced/border-radius-clip-expected.png: Added.
  • platform/qt-5.0-wk2/fast/replaced/border-radius-clip-expected.txt: Added.
3:27 AM Changeset in webkit [152780] by Christophe Dumez
  • 23 edits
    1 add in trunk/Source/WebCore

Get rid of SVGPoint special case from the bindings generator
https://bugs.webkit.org/show_bug.cgi?id=118783

Reviewed by Kentaro Hara.

Get rid of SVGPoint special case from the bindings generator by adding a
new SVGPoint.h header that contains a typedef to FloatPoint.

Also use SVGPoint type in the implementation API for consistency with
the IDL.

No new tests, no behavior change.

  • bindings/scripts/CodeGenerator.pm:

(SkipIncludeHeader):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjMutablePoint):
(WebCore::jsTestObjImmutablePoint):
(WebCore::setJSTestObjMutablePoint):
(WebCore::setJSTestObjImmutablePoint):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):

  • bindings/scripts/test/ObjC/DOMTestObj.mm:

(-[DOMTestObj mutablePoint]):
(-[DOMTestObj immutablePoint]):
(-[DOMTestObj mutablePointFunction]):
(-[DOMTestObj immutablePointFunction]):

  • bindings/scripts/test/ObjC/DOMTestTypedefs.mm:

(-[DOMTestTypedefs immutablePointFunction]):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::startPositionOfCharacter):
(WebCore::SVGTextQuery::endPositionOfCharacter):
(WebCore::SVGTextQuery::characterNumberAtPosition):

  • rendering/svg/SVGTextQuery.h:
  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::getPointAtLength):

  • svg/SVGPathElement.h:
  • svg/SVGPathTraversalStateBuilder.cpp:

(WebCore::SVGPathTraversalStateBuilder::currentPoint):

  • svg/SVGPathTraversalStateBuilder.h:
  • svg/SVGPathUtilities.cpp:

(WebCore::getPointAtLengthOfSVGPathByteStream):

  • svg/SVGPathUtilities.h:
  • svg/SVGPoint.h: Added.
  • svg/SVGPointList.cpp:

(WebCore::SVGPointList::valueAsString):

  • svg/SVGPointList.h:
  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::createSVGPoint):

  • svg/SVGSVGElement.h:
  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::getStartPositionOfChar):
(WebCore::SVGTextContentElement::getEndPositionOfChar):
(WebCore::SVGTextContentElement::getCharNumAtPosition):

  • svg/SVGTextContentElement.h:
  • svg/SVGZoomEvent.cpp:

(WebCore::SVGZoomEvent::previousTranslate):
(WebCore::SVGZoomEvent::newTranslate):

  • svg/SVGZoomEvent.h:
3:11 AM Changeset in webkit [152779] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Add a new find-resolved-bugs command to webkit-patch.
https://bugs.webkit.org/show_bug.cgi?id=118060

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-07-17
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/tool/commands/queries.py:

(PrintBaselines._platform_for_path):
(FindResolvedBugs):
(FindResolvedBugs.execute):

2:39 AM Changeset in webkit [152778] by Carlos Garcia Campos
  • 9 edits
    4 adds in trunk/Source/WebCore

[GStreamer] webkitwebsrc: use SubResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=73743

Reviewed by Philippe Normand.

  • GNUmakefile.list.am: Add new files to compilation.
  • PlatformEfl.cmake: Ditto.
  • PlatformGTK.cmake: Ditto.
  • loader/SubresourceLoader.h: Add getOrCreateReadBuffer() when

using SOUP.

  • loader/cache/CachedRawResource.h:
  • loader/cache/CachedRawResourceClient.h:

(WebCore::CachedRawResourceClient::getOrCreateReadBuffer): Added
to allow the client to allocate the read buffer.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::getOrCreateReadBuffer):

  • loader/soup/CachedRawResourceSoup.cpp: Added.

(WebCore::CachedRawResource::getOrCreateReadBuffer): Iterate the
clients until one returns a valid read buffer or return NULL to
fallback to the default read buffer.

  • loader/soup/SubresourceLoaderSoup.cpp: Added.

(WebCore::SubresourceLoader::getOrCreateReadBuffer): Call
CachedResource::getOrCreateReadBuffer().

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(StreamingClient): Make this a CachedRawResourceClient.
(_WebKitWebSrcPrivate): Remove frame and resourceHandle and add a
cached resource handle.
(webKitWebSrcDispose): Clear the player pointer.
(webKitWebSrcStop): Remove the client from the cached resource.
(webKitWebSrcStart): Use CachedResourceLoader to schedule a
CachedRawResource load for the media without buffering the data.
(webKitWebSrcNeedDataMainCb): Call CachedResource::setDefersLoading.
(webKitWebSrcEnoughDataMainCb): Ditto.
(webKitWebSrcSetMediaPlayer): Simply update the player pointer.
(StreamingClient::responseReceived): Update to the
CachedRawResourceClient API.
(StreamingClient::dataReceived): Ditto.
(StreamingClient::getOrCreateReadBuffer): Ditto.
(StreamingClient::notifyFinished): Ditto.

2:16 AM Changeset in webkit [152777] by commit-queue@webkit.org
  • 1 edit
    30 adds
    54 deletes in trunk/LayoutTests

Replace MathML pixel tests by reftests.
https://bugs.webkit.org/show_bug.cgi?id=118599

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-17
Reviewed by Chris Fleizach.

  • attributes.xhtml is replaced by attributes*.html
  • underover.xhtml, under.xhtml, sub.xhtml, sup.xhtml, over.xhtml and subsup.xhtml are replaced by scripts*.html and bug*.html.
  • tokenElements.xhtml is replaced by replaced tokenElements-mathvariant.html
  • mathml/presentation/attributes-background-color-expected.html: Added.
  • mathml/presentation/attributes-background-color.html: Added.
  • mathml/presentation/attributes-display-expected.html: Added.
  • mathml/presentation/attributes-display.html: Added.
  • mathml/presentation/attributes-mathsize-expected.html: Added.
  • mathml/presentation/attributes-mathsize.html: Added.
  • mathml/presentation/attributes-mathvariant-expected.html: Added.
  • mathml/presentation/attributes-mathvariant.html: Added.
  • mathml/presentation/attributes-style-expected-mismatch.html: Added.
  • mathml/presentation/attributes-style.html: Added.
  • mathml/presentation/attributes.xhtml: Removed.
  • mathml/presentation/bug95015-expected.html: Added.
  • mathml/presentation/bug95015.html: Added.
  • mathml/presentation/bug95404-expected.html: Added.
  • mathml/presentation/bug95404.html: Added.
  • mathml/presentation/bug97990-expected.html: Added.
  • mathml/presentation/bug97990.html: Added.
  • mathml/presentation/over.xhtml: Removed.
  • mathml/presentation/scripts-font-size-expected-mismatch.html: Added.
  • mathml/presentation/scripts-font-size.html: Added.
  • mathml/presentation/scripts-height-expected.html: Added.
  • mathml/presentation/scripts-height.html: Added.
  • mathml/presentation/scripts-mrow-expected.html: Added.
  • mathml/presentation/scripts-mrow.html: Added.
  • mathml/presentation/scripts-subsup-expected.html: Added.
  • mathml/presentation/scripts-subsup.html: Added.
  • mathml/presentation/scripts-underover-expected.html: Added.
  • mathml/presentation/scripts-underover.html: Added.
  • mathml/presentation/scripts-width-expected.html: Added.
  • mathml/presentation/scripts-width.html: Added.
  • mathml/presentation/sub.xhtml: Removed.
  • mathml/presentation/subsup.xhtml: Removed.
  • mathml/presentation/sup.xhtml: Removed.
  • mathml/presentation/tokenElements-mathvariant-expected.html: Added.
  • mathml/presentation/tokenElements-mathvariant.html: Added.
  • mathml/presentation/tokenElements.xhtml: Removed.
  • mathml/presentation/under.xhtml: Removed.
  • mathml/presentation/underover.xhtml: Removed.
1:47 AM Changeset in webkit [152776] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2CookieManagerTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118721

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:

(compareHostNames):
(onCookiesChanged):
(EWK2CookieManagerTest::getAcceptPolicy):
(EWK2CookieManagerTest::getHostnamesWithCookies):
(EWK2CookieManagerTest::freeHostNames):
(EWK2CookieManagerTest::countHostnamesWithCookies):
(TEST_F):

1:40 AM Changeset in webkit [152775] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unused member variable m_domURL from WorkerGlobalScope
https://bugs.webkit.org/show_bug.cgi?id=118784

Reviewed by Christophe Dumez.

WorkerContext::webkitURL() was removed in r107082, and this was the
only place where the member variable |m_domURL| in WorkerContext was
mutated. This variable is no longer needed and so it should be removed.

No behavior change.

  • workers/WorkerGlobalScope.h:
1:37 AM Changeset in webkit [152774] by kbalazs@webkit.org
  • 13 edits in trunk

[CMake] Undefined references should be detected at build time
https://bugs.webkit.org/show_bug.cgi?id=110236

Patch by Balazs Kelemen <kbalazs@webkit.org> on 2013-07-16
Reviewed by Christophe Dumez.

.:

Pass the --no-undefined argument to the linker on platforms where it is available.

  • Source/cmake/OptionsCommon.cmake:

Source/WebKit:

Add library dependencies that were not defined explicitly before.

  • CMakeLists.txt:
  • PlatformEfl.cmake:

Source/WebKit2:

Add library dependencies that were not defined explicitly before.

  • CMakeLists.txt:
  • PlatformEfl.cmake:

Tools:

Add library dependencies that were not defined explicitly before.

  • DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
  • TestWebKitAPI/CMakeLists.txt:
  • WebKitTestRunner/CMakeLists.txt:
12:27 AM Changeset in webkit [152773] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2WindowFeaturesTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118780

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_window_features.cpp:

(EWK2WindowFeaturesTest::createDefaultWindow):
(EWK2WindowFeaturesTest::createWindow):
(TEST_F):

12:26 AM Changeset in webkit [152772] by zoltan@webkit.org
  • 2 edits in trunk/LayoutTests

[CSS Shapes] Remove setCSSShapesEnabled(true) from shape-inside-on-first-region-inline-content-expected.html since it's no longer using shapes
https://bugs.webkit.org/show_bug.cgi?id=117952

Reviewed by Alexandru Chiculita.

  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content-expected.html:
12:25 AM Changeset in webkit [152771] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2ViewTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118779

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(EWK2ViewTest::onLoadFinishedForRedirection):
(EWK2ViewTest::serverCallbackNavigation):
(EWK2ViewTest::onFormAboutToBeSubmitted):
(EWK2ViewTest::fullScreenCallback):
(EWK2ViewTest::fullScreenExitCallback):
(EWK2ViewTest::checkAlert):
(EWK2ViewTest::checkConfirm):
(EWK2ViewTest::checkPrompt):
(EWK2ViewTest::onTextFound):
(EWK2ViewTest::onVibrate):
(EWK2ViewTest::onCancelVibration):
(EWK2ViewTest::loadVibrationHTMLString):
(EWK2ViewTest::onContentsSizeChangedPortrait):
(EWK2ViewTest::onContentsSizeChangedLandscape):
(EWK2ViewTest::PageContentsAsMHTMLCallback):
(EWK2ViewTest::PageContentsAsStringCallback):
(TEST_F):

12:23 AM Changeset in webkit [152770] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2StorageManagerTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118777

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:

(EWK2StorageManagerTest::OriginData::OriginData):
(EWK2StorageManagerTest::getStorageOriginsCallback):
(EWK2StorageManagerTest::timerCallback):
(EWK2StorageManagerTest::checkOrigin):
(TEST_F):

12:22 AM Changeset in webkit [152769] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2PopupMenuTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118775

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_popup_menu.cpp:

(EWK2PopupMenuTest::checkBasicPopupMenuItem):
(EWK2PopupMenuTest::selectItemAfterDelayed):
(EWK2PopupMenuTest::showPopupMenu):
(TEST_F):

12:20 AM Changeset in webkit [152768] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

ASSERTION FAILED: layoutState->m_renderer == this in WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage
https://bugs.webkit.org/show_bug.cgi?id=118587

Patch by Mihai Maerean <Mihai Maerean> on 2013-07-17
Reviewed by David Hyatt.

Source/WebCore:

The fix consists in not calling containingBlockLogicalHeightForPositioned for flow threads (in
RenderBox::availableLogicalHeightUsing) as it gets to handle the RenderView as it would have been flowed into
the flow thread.

Test: fast/regions/crash-div-outside-body-vertical-rl.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::availableLogicalHeightUsing):

LayoutTests:

  • fast/regions/crash-div-outside-body-vertical-rl-expected.html: Added.
  • fast/regions/crash-div-outside-body-vertical-rl.html: Added.
12:19 AM Changeset in webkit [152767] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2FileChooserRequestTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118773

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:

(EWK2FileChooserRequestTest::onFileChooserRequest):
(EWK2FileChooserRequestTest::compareStrings):
(EWK2FileChooserRequestTest::freeStringList):
(TEST_F):

12:18 AM Changeset in webkit [152766] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2FaviconDatabaseTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118772

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:

(EWK2FaviconDatabaseTest::serverCallback):
(EWK2FaviconDatabaseTest::requestFaviconData):
(TEST_F):

12:16 AM Changeset in webkit [152765] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2EinaSharedStringTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118771

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:

(EWK2EinaSharedStringTest::checkString):
(TEST_F):

12:15 AM Changeset in webkit [152764] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2DownloadJobTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118769

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_download_job.cpp:

(EWK2DownloadJobTest::fileExists):
(EWK2DownloadJobTest::serverCallback):
(EWK2DownloadJobTest::on_download_requested):
(EWK2DownloadJobTest::on_download_cancelled):
(EWK2DownloadJobTest::on_download_failed):
(EWK2DownloadJobTest::on_download_finished):
(TEST_F):

12:12 AM Changeset in webkit [152763] by kangil.han@samsung.com
  • 26 edits in trunk/Source

Use toHTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=118727

Reviewed by Ryosuke Niwa.

To avoid direct use of static_cast, this patch uses toHTMLMediaElement for code cleanup.

Source/WebCore:

  • bindings/js/JSHTMLMediaElementCustom.cpp:

(WebCore::JSHTMLMediaElement::setController):

  • html/HTMLMediaElement.h:

(WebCore::toHTMLMediaElement):

  • html/HTMLSourceElement.cpp:

(WebCore::HTMLSourceElement::insertedInto):
(WebCore::HTMLSourceElement::removedFrom):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::removedFrom):
(WebCore::HTMLTrackElement::mediaElement):

  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::toParentMediaElement):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):

  • page/FrameView.cpp:

(WebCore::FrameView::updateWidget):

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::paintMediaFullscreenButton):
(WebCore::RenderThemeEfl::paintMediaMuteButton):
(WebCore::RenderThemeEfl::paintMediaToggleClosedCaptionsButton):

  • platform/graphics/wince/MediaPlayerProxy.cpp:

(WebCore::WebMediaPlayerProxy::initEngine):
(WebCore::WebMediaPlayerProxy::element):

  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::getMediaElementFromRenderObject):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::mediaElement):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForVideo):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::mediaElement):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintMediaSliderTrack):

  • rendering/RenderThemeWinCE.cpp:

(WebCore::mediaElementParent):

  • testing/Internals.cpp:

(WebCore::Internals::simulateAudioInterruption):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPage::notifyFullScreenVideoExited):
(BlackBerry::WebKit::WebPagePrivate::enterFullscreenForNode):
(BlackBerry::WebKit::WebPagePrivate::exitFullscreenForNode):

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::enterFullscreenForNode):
(WebKit::ChromeClient::exitFullscreenForNode):
(WebKit::ChromeClient::enterFullScreenForElement):
(WebKit::ChromeClient::exitFullScreenForElement):

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _enterFullscreenForNode:WebCore::]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::enterFullscreenForNode):

12:11 AM Changeset in webkit [152762] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2AuthRequestTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118766

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:

(EWK2AuthRequestTest::serverCallback):
(EWK2AuthRequestTest::onAuthenticationRequest):
(EWK2AuthRequestTest::onLoadFinished):
(TEST_F):

12:09 AM Changeset in webkit [152761] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2ContextMenuTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118767

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:

(EWK2ContextMenuTest::checkBasicContextMenuItem):
(EWK2ContextMenuTest::customItemSelected):
(EWK2ContextMenuTest::showContextMenu):
(EWK2ContextMenuTest::showContextMenuForRemoveAndAppend):
(EWK2ContextMenuTest::showContextMenuForSubmenu):
(EWK2ContextMenuTest::hideContextMenu):
(TEST_F):

12:06 AM Changeset in webkit [152760] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2ContextTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118763

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_context.cpp:

(EWK2ContextTest::schemeRequestCallback):
(TEST_F):

12:05 AM Changeset in webkit [152759] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2DatabaseManagerTest should be defined by inheriting from EWK2UnitTestBase
https://bugs.webkit.org/show_bug.cgi?id=118726

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_database_manager.cpp:

(EWK2DatabaseManagerTest::OriginData::OriginData):
(EWK2DatabaseManagerTest::databaseOriginsCallback):
(EWK2DatabaseManagerTest::timerCallback):
(TEST_F):

12:03 AM Changeset in webkit [152758] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] EWK2ColorPickerTest should be defined by inheriting from EWK2UnitTestBase.
https://bugs.webkit.org/show_bug.cgi?id=118762

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-07-17
Reviewed by Christophe Dumez.

It should be defined as relevant test class specific to each test file for more readability.
It could be helpful to remove unnecessary static methods.

  • UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:

(EWK2ColorPickerTest::onColorPickerDone):
(EWK2ColorPickerTest::setColorPickerColor):
(EWK2ColorPickerTest::showColorPicker):
(EWK2ColorPickerTest::hideColorPicker):
(EWK2ColorPickerTest::hideColorPickerByRemovingElement):
(TEST_F):

Note: See TracTimeline for information about the timeline view.