1. 20 Nov, 2012 40 commits
    • fpizlo@apple.com's avatar
      DFG should be able to cache closure calls (part 2/2) · 4092e56d
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=102662
      
      Reviewed by Gavin Barraclough.
      
      Added caching of calls where the JSFunction* varies, but the Structure* and ExecutableBase*
      stay the same. This is accomplished by replacing the branch that compares against a constant
      JSFunction* with a jump to a closure call stub. The closure call stub contains a fast path,
      and jumps slow directly to the virtual call thunk.
      
      Looks like a 1% win on V8v7.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * Target.pri:
      * bytecode/CallLinkInfo.cpp:
      (JSC::CallLinkInfo::unlink):
      * bytecode/CallLinkInfo.h:
      (CallLinkInfo):
      (JSC::CallLinkInfo::isLinked):
      (JSC::getCallLinkInfoBytecodeIndex):
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::finalizeUnconditionally):
      (JSC):
      (JSC::CodeBlock::findClosureCallForReturnPC):
      (JSC::CodeBlock::bytecodeOffset):
      (JSC::CodeBlock::codeOriginForReturn):
      * bytecode/CodeBlock.h:
      (JSC::CodeBlock::getCallLinkInfo):
      (CodeBlock):
      (JSC::CodeBlock::isIncomingCallAlreadyLinked):
      * dfg/DFGJITCompiler.cpp:
      (JSC::DFG::JITCompiler::link):
      * dfg/DFGJITCompiler.h:
      (JSC::DFG::JITCompiler::addJSCall):
      (JSC::DFG::JITCompiler::JSCallRecord::JSCallRecord):
      (JSCallRecord):
      * dfg/DFGOperations.cpp:
      * dfg/DFGOperations.h:
      * dfg/DFGRepatch.cpp:
      (JSC::DFG::linkSlowFor):
      (DFG):
      (JSC::DFG::dfgLinkFor):
      (JSC::DFG::dfgLinkSlowFor):
      (JSC::DFG::dfgLinkClosureCall):
      * dfg/DFGRepatch.h:
      (DFG):
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::emitCall):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::emitCall):
      * dfg/DFGThunks.cpp:
      (DFG):
      (JSC::DFG::linkClosureCallThunkGenerator):
      * dfg/DFGThunks.h:
      (DFG):
      * heap/Heap.h:
      (Heap):
      (JSC::Heap::jitStubRoutines):
      * heap/JITStubRoutineSet.h:
      (JSC::JITStubRoutineSet::size):
      (JSC::JITStubRoutineSet::at):
      (JITStubRoutineSet):
      * jit/ClosureCallStubRoutine.cpp: Added.
      (JSC):
      (JSC::ClosureCallStubRoutine::ClosureCallStubRoutine):
      (JSC::ClosureCallStubRoutine::~ClosureCallStubRoutine):
      (JSC::ClosureCallStubRoutine::markRequiredObjectsInternal):
      * jit/ClosureCallStubRoutine.h: Added.
      (JSC):
      (ClosureCallStubRoutine):
      (JSC::ClosureCallStubRoutine::structure):
      (JSC::ClosureCallStubRoutine::executable):
      (JSC::ClosureCallStubRoutine::codeOrigin):
      * jit/GCAwareJITStubRoutine.cpp:
      (JSC::GCAwareJITStubRoutine::GCAwareJITStubRoutine):
      * jit/GCAwareJITStubRoutine.h:
      (GCAwareJITStubRoutine):
      (JSC::GCAwareJITStubRoutine::isClosureCall):
      * jit/JIT.cpp:
      (JSC::JIT::privateCompile):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135336 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4092e56d
    • rniwa@webkit.org's avatar
      REGRESSION(r131106): magnitude-perf.js calls bind on undefined · da1e5cb6
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102848
      
      Reviewed by Tony Gentilcore.
      
      Check the existence of performance.now before calling bind on it.
      
      * resources/magnitude-perf.js:
      (Magnitude._runIteration):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135335 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da1e5cb6
    • ojan@chromium.org's avatar
      Simplify builder filters now that we have lists of which builders run which tests · 7faca392
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102849
      
      Reviewed by Dirk Pranke.
      
      We only need filters when we load the same master for multiple groups in the
      same test type, i.e. when we need to only include some of the builders that run
      a given test suite on a given master.
      
      Also, get rid of the DEFAULT_BUILDER enum. We were always using the first builder anyways.
      Now just make it a method on BuilderGroup.
      
      * TestResultServer/static-dashboards/builders.js:
      (BuilderGroup.prototype.append):
      (BuilderGroup.prototype.setup):
      (BuilderGroup.prototype._defaultBuilder):
      (BuilderGroup.prototype.master):
      (requestBuilderList):
      (isChromiumWebkitTipOfTreeTestRunner):
      (isChromiumWebkitDepsTestRunner):
      (loadBuildersList):
      * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
      (test):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135334 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7faca392
    • dgrogan@chromium.org's avatar
      IndexedDB: remove setVersion from pending-version-change-on-exit.html · d044cd5a
      dgrogan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102457
      
      Reviewed by Tony Chang.
      
      This test doesn't work in single-process mode because of
      http://wkb.ug/82776. We run it in content_shell in chromium.
      
      * platform/chromium/TestExpectations:
      * storage/indexeddb/pending-version-change-on-exit-expected.txt:
      * storage/indexeddb/pending-version-change-on-exit.html:
      * storage/indexeddb/resources/pending-version-change-on-exit.js:
      (request.onblocked):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135333 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d044cd5a
    • jsbell@chromium.org's avatar
      IndexedDB: Move control of transaction completion to front end · 1295748e
      jsbell@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=100903
      
      Reviewed by Tony Chang.
      
      "When a transaction can no longer become active, the implementation must attempt to
      commit it" - that is, all requests have dispatched success/error events and no further
      requests have been made. Previously, this was done by the back end waiting for events
      from the front end, but the front end can more efficiently make the decision.
      
      There should be no detectable behavior change.
      
      Tests: storage/indexeddb/transaction-*.html
      
      * Modules/indexeddb/IDBTransaction.cpp:
      (WebCore::IDBTransaction::IDBTransaction):
      (WebCore::IDBTransaction::setActive):
      (WebCore::IDBTransaction::registerRequest):
      * Modules/indexeddb/IDBTransaction.h:
      * Modules/indexeddb/IDBTransactionBackendImpl.cpp:
      (WebCore::IDBTransactionBackendImpl::hasPendingTasks): Added.
      (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
      (WebCore::IDBTransactionBackendImpl::run):
      (WebCore::IDBTransactionBackendImpl::taskEventTimerFired):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135332 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1295748e
    • ojan@chromium.org's avatar
      Remove perfav master for webkit_unit_tests and test_shell_tests. · e25bf75f
      ojan@chromium.org authored
      There are no bots on this master that run these tests.
      * TestResultServer/static-dashboards/builders.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135331 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e25bf75f
    • fpizlo@apple.com's avatar
      DFG should be able to cache closure calls (part 1/2) · 32d42cef
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=102662
      
      Reviewed by Gavin Barraclough.
      
      Add ability to revert a jump replacement back to
      branchPtrWithPatch(Condition, RegisterID, TrustedImmPtr). This is meant to be
      a mandatory piece of functionality for all assemblers. I also renamed some of
      the functions for reverting jump replacements back to
      patchableBranchPtrWithPatch(Condition, Address, TrustedImmPtr), so as to avoid
      confusion.
      
      * assembler/ARMv7Assembler.h:
      (JSC::ARMv7Assembler::BadReg):
      (ARMv7Assembler):
      (JSC::ARMv7Assembler::revertJumpTo_movT3):
      * assembler/LinkBuffer.h:
      (JSC):
      * assembler/MacroAssemblerARMv7.h:
      (JSC::MacroAssemblerARMv7::startOfBranchPtrWithPatchOnRegister):
      (MacroAssemblerARMv7):
      (JSC::MacroAssemblerARMv7::revertJumpReplacementToBranchPtrWithPatch):
      (JSC::MacroAssemblerARMv7::startOfPatchableBranchPtrWithPatchOnAddress):
      * assembler/MacroAssemblerX86.h:
      (JSC::MacroAssemblerX86::startOfBranchPtrWithPatchOnRegister):
      (MacroAssemblerX86):
      (JSC::MacroAssemblerX86::startOfPatchableBranchPtrWithPatchOnAddress):
      (JSC::MacroAssemblerX86::revertJumpReplacementToBranchPtrWithPatch):
      * assembler/MacroAssemblerX86_64.h:
      (JSC::MacroAssemblerX86_64::startOfBranchPtrWithPatchOnRegister):
      (JSC::MacroAssemblerX86_64::startOfPatchableBranchPtrWithPatchOnAddress):
      (MacroAssemblerX86_64):
      (JSC::MacroAssemblerX86_64::revertJumpReplacementToBranchPtrWithPatch):
      * assembler/RepatchBuffer.h:
      (JSC::RepatchBuffer::startOfBranchPtrWithPatchOnRegister):
      (RepatchBuffer):
      (JSC::RepatchBuffer::startOfPatchableBranchPtrWithPatchOnAddress):
      (JSC::RepatchBuffer::revertJumpReplacementToBranchPtrWithPatch):
      * assembler/X86Assembler.h:
      (JSC::X86Assembler::revertJumpTo_cmpl_ir_force32):
      (X86Assembler):
      * dfg/DFGRepatch.cpp:
      (JSC::DFG::replaceWithJump):
      (JSC::DFG::dfgResetGetByID):
      (JSC::DFG::dfgResetPutByID):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135330 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      32d42cef
    • haraken@chromium.org's avatar
      Unreviewed. Rebaselined run-bindings-tests results. · a2ea07f8
      haraken@chromium.org authored
      * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
      (WebCore::V8TestEventConstructor::constructorCallback):
      * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
      (WebCore::V8TestNamedConstructorConstructorCallback):
      * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
      (WebCore::V8TestOverloadedConstructors::constructorCallback):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135329 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a2ea07f8
    • hclam@chromium.org's avatar
      Unreviewed. Chromium build fix. · f2551e8d
      hclam@chromium.org authored
      Removed unnecessary mutex unlock that triggered crash on Linux debug build.
      
      Chromium Linux Debug layout tests should be green:
      platform/chromium/virtual/deferred/fast/images/image-in-map.html
      
      * platform/graphics/chromium/LazyDecodingPixelRef.cpp:
      (WebCore::LazyDecodingPixelRef::onLockPixels):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2551e8d
    • rniwa@webkit.org's avatar
      Fix another typo. I need to checking that type() != NodeListCollectionType, · a7568c29
      rniwa@webkit.org authored
      not that type() >= FirstNodeCollectionType.
      
      * dom/DynamicNodeList.cpp:
      (WebCore::DynamicNodeListCacheBase::invalidateIdNameCacheMaps):
      * dom/DynamicNodeList.h:
      (WebCore::DynamicNodeListCacheBase::invalidateCache):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a7568c29
    • ojan@chromium.org's avatar
      Remove special case for layout tests when builders fail to load · 1c0a9c8d
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102842
      
      Reviewed by Tony Chang.
      
      Now that we load only builders that actually run the given test
      type, we can reliably show errors to the users because it
      represents a broken bot.
      * TestResultServer/static-dashboards/loader.js:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c0a9c8d
    • commit-queue@webkit.org's avatar
      [V8] Pass ScriptState::current() to functions marked with CallWith=ScriptState · 4e2c04aa
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102739
      
      Patch by Michael Pruett <michael@68k.org> on 2012-11-20
      Reviewed by Kentaro Hara.
      
      Previously EmptyScriptState rather than ScriptState::current()
      was passed to functions marked with [CallWith=ScriptState].
      Since the EmptyScriptState has a null v8::Context, any functions
      which depended upon a valid v8::Context would fail.
      
      No new tests. Covered by existing tests.
      
      * bindings/scripts/CodeGeneratorV8.pm:
      (GenerateNormalAttrGetter):
      (GenerateNormalAttrSetter):
      (GenerateCallWith):
      (GenerateFunctionCallString):
      * bindings/v8/ScriptState.h:
      (WebCore::ScriptState::clearException): Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e2c04aa
    • bfulgham@webkit.org's avatar
      [Qt] Build fix after r135217. · e435ccf0
      bfulgham@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102787
      
      * platform/win/WindowsExtras.h: Switch to direct include of
        <ObjBase.h>, as is done in other <shlwapi.h> includes.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135324 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e435ccf0
    • rniwa@webkit.org's avatar
      Fix typos. Apparently XCode failed to text-replace earlier when it was busy making a snapshot :( · 4d745a03
      rniwa@webkit.org authored
      * dom/DynamicNodeList.cpp:
      (WebCore::DynamicNodeListCacheBase::invalidateIdNameCacheMaps):
      * dom/DynamicNodeList.h:
      (WebCore::DynamicNodeListCacheBase::invalidateCache):
      (DynamicNodeListCacheBase):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d745a03
    • haraken@chromium.org's avatar
      [V8] Introduce GenerateConstructorHeader() to CodeGeneratorV8.pm · ff9f9062
      haraken@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102806
      
      Reviewed by Adam Barth.
      
      This is an incremental step for introducing constructorCallbackCustom().
      (See bug 102763.) This patch adds GenerateConstructorHeader()
      that generates a common code for constructors.
      
      No tests. No change in behavior.
      
      * bindings/scripts/CodeGeneratorV8.pm:
      (GenerateOverloadedConstructorCallback):
      (GenerateSingleConstructorCallback):
      (GenerateEventConstructorCallback):
      (GenerateNamedConstructorCallback):
      (GenerateConstructorHeader):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff9f9062
    • rniwa@webkit.org's avatar
      HTMLCollection's cache should not be invalidated when id or name attributes are changed · 81f6f6a3
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102843
      
      Reviewed by Eric Seidel.
      
      When an id or name attribute changes, only invaliate id and name cache maps when the collection
      doesn't depend on id and name attributes (e.g. document.images).
      
      Unfortunately, I could not create a reliable test for this performance problem.
      
      * dom/DynamicNodeList.cpp:
      (WebCore::DynamicNodeListCacheBase::invalidateIdNameCacheMaps):
      * dom/DynamicNodeList.h:
      (WebCore::DynamicNodeListCacheBase::invalidateCache):
      (DynamicNodeListCacheBase):
      * dom/ElementRareData.h:
      (WebCore::ElementRareData::clearHTMLCollectionCaches):
      * html/HTMLCollection.cpp:
      (WebCore::invalidationTypeExcludingIdAndNameAttributes):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81f6f6a3
    • adamk@chromium.org's avatar
      [v8] Avoid unnecessary call to ToObject() in Callback constructors · 334caa75
      adamk@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102831
      
      Reviewed by Adam Barth.
      
      The code already asserted that the argument was an object, so calling
      ToObject() is unnecessary: a simple Cast() suffices.
      
      * bindings/scripts/CodeGeneratorV8.pm:
      (GenerateCallbackHeader):
      * bindings/scripts/test/V8/V8TestCallback.h:
      (WebCore::V8TestCallback::create):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135320 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      334caa75
    • commit-queue@webkit.org's avatar
      [BlackBerry] Animated gifs pause on scroll or zoom and sometimes don't resume... · 40e35dd7
      commit-queue@webkit.org authored
      [BlackBerry] Animated gifs pause on scroll or zoom and sometimes don't resume after scroll or zoom completes
      https://bugs.webkit.org/show_bug.cgi?id=102838
      
      Patch by Andrew Lo <anlo@rim.com> on 2012-11-20
      Reviewed by Rob Buis.
      
      Internally reviewed by Adam Treat.
      Internal PR244646
      When entering scrolling & zooming, we suspend regular render jobs
      in order to pause animations. When finishing scrolling or zooming,
      dispatch a render job in order to resume those animations.
      
      If an animation requests a repaint while the backing store is suspended,
      add the regular render job to the render queue so that it can be
      processed later.
      
      * Api/BackingStore.cpp:
      (BlackBerry::WebKit::BackingStorePrivate::repaint):
      (BlackBerry::WebKit::BackingStorePrivate::setScrollingOrZooming):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135319 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40e35dd7
    • rjkroege@chromium.org's avatar
      [chromium] Use embedder-supported gesture curves · 5eaf111e
      rjkroege@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=100884
      
      Reviewed by James Robinson.
      
      Use embedder-provided gesture animation curves via WebKit api interfaces.
      Tested by existing tests.
      
      * src/WebCompositorInputHandlerImpl.cpp:
      (WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
      (WebKit::WebCompositorInputHandlerImpl::scrollBy):
      * src/WebCompositorInputHandlerImpl.h:
      (WebCompositorInputHandlerImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::scrollBy):
      (WebKit::WebViewImpl::handleGestureEvent):
      (WebKit::WebViewImpl::transferActiveWheelFlingAnimation):
      * src/WebViewImpl.h:
      (WebCore):
      (WebKit):
      (WebViewImpl):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135318 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5eaf111e
    • bfulgham@webkit.org's avatar
      [WinCairo] Build fix after r135316 · ef3132ea
      bfulgham@webkit.org authored
      * platform/network/curl/AuthenticationChallenge.h: Update stub
        implementations to match Apple Windows port.
      (WebCore::AuthenticationChallenge::AuthenticationChallenge): Add
        missing identifier argument.
      (WebCore::AuthenticationChallenge::setAuthenticationClient): Supply
        missing set method.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135317 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ef3132ea
    • tony@chromium.org's avatar
      When calling DocumentStyleSheetCollection::addUserSheet, pass in a user sheet · 8ea2be6a
      tony@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102835
      
      Reviewed by Ojan Vafai.
      
      After r135082, Chromium browser_tests were triggering the ASSERT in
      StyleResolver::collectRulesFromUserStyleSheets. Add an ASSERT that will
      trigger earlier and make it clear in the Chromium code that we're always
      inserting user level styles.
      
      Source/WebCore:
      
      No new tests, no behavior change except no longer triggering the StyleResolver ASSERT
      in Chromium browser_tests.
      
      * dom/DocumentStyleSheetCollection.cpp:
      (WebCore::DocumentStyleSheetCollection::addUserSheet):
      
      Source/WebKit/chromium:
      
      * src/WebDocument.cpp:
      (WebKit::WebDocument::insertUserStyleSheet):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8ea2be6a
    • commit-queue@webkit.org's avatar
      Provide page/window coordinates to plugin's local coordinates translation in WebPluginContainer. · 7c643aad
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102339
      
      Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-20
      Reviewed by Adam Barth.
      
      This change will allow converting a page's window coordinates to plugins's local coordinates,
      taking CSS transformations into account. Embedder page of the plugin can use this information
      for targetting elements inside the plugin (e.g. devtools can inspect a specific element at the
      local coordinate position inside plugin).
      
      * WebKit.gyp:
      * WebKit.gypi:
      * public/WebNode.h:
      (WebKit):
      * public/WebPluginContainer.h:
      (WebKit):
      (WebPluginContainer):
      * src/WebFrameImpl.cpp:
      (WebKit::WebFrameImpl::executeCommand):
      (WebKit::WebFrameImpl::printBegin):
      (WebKit::WebFrameImpl::isPrintScalingDisabledForPlugin):
      * src/WebNode.cpp:
      (WebKit::WebNode::pluginContainer):
      (WebKit):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::windowToLocalPoint):
      (WebKit):
      * src/WebPluginContainerImpl.h:
      (WebPluginContainerImpl):
      * tests/FakeWebPlugin.cpp: Added.
      (WebKit):
      (WebKit::FakeWebPlugin::FakeWebPlugin):
      (WebKit::FakeWebPlugin::~FakeWebPlugin):
      (WebKit::FakeWebPlugin::initialize):
      (WebKit::FakeWebPlugin::destroy):
      * tests/FakeWebPlugin.h: Added.
      (WebKit):
      (FakeWebPlugin):
      * tests/WebPluginContainerTest.cpp: Added.
      (WebKit):
      (WebPluginContainerTest):
      (WebKit::WebPluginContainerTest::WebPluginContainerTest):
      (WebKit::WebPluginContainerTest::TearDown):
      (WebKit::getWebPluginContainer):
      (WebKit::TEST_F):
      * tests/data/plugin_container.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135315 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c643aad
    • commit-queue@webkit.org's avatar
      [CSS Exclusions] Support outside-shape value on shape-inside · d9aa3107
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=101108
      
      Patch by Bear Travis <betravis@adobe.com> on 2012-11-20
      Reviewed by Dirk Schulze.
      
      Source/WebCore:
      
      Shape-inside can potentially be: 'auto' | 'outside-shape' | <shape> | <url>.
      Webkit currently supports the value 'auto' (null) and <shape> (a BasicShape*).
      This patch adds support for the value 'outside-shape.' It adds the ExclusionShapeValue
      class, which may be any of the three values: 'auto', 'outside-shape', or <shape>.
      Bug 102738 tracks adding <url> support.
      
      Modifying existing tests:
      LayoutTests/fast/exclusions/parsing-wrap-shape-inside.html
      LayoutTests/fast/exclusions/parsing-wrap-shape-outside.html
      
      * GNUmakefile.list.am: Adding ExclusionShapeValue.h to the build files.
      * Target.pri: Ditto.
      * WebCore.gypi: Ditto.
      * WebCore.vcproj/WebCore.vcproj: Ditto.
      * WebCore.xcodeproj/project.pbxproj: Ditto.
      (WebCore):
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Modifying code to use
      ExclusionShapeValue* rather than the previous BasicShape* values.
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseValue): Handle the outside-shape value.
      * css/CSSValueKeywords.in: Adding outside-shape value.
      * css/StyleBuilder.cpp:
      (WebCore):
      (WebCore::ApplyPropertyExclusionShape::setValue): Modify code to use
      ExclusionShapeValue* rather than BasicShape*.
      (WebCore::ApplyPropertyExclusionShape::applyValue): Ditto.
      (WebCore::ApplyPropertyExclusionShape::createHandler): Ditto.
      * page/animation/CSSPropertyAnimation.cpp: Ditto.
      (WebCore::blendFunc): Ditto.
      (WebCore::PropertyWrapperExclusionShape::PropertyWrapperExclusionShape): Ditto.
      (WebCore::CSSPropertyAnimation::ensurePropertyMap): Ditto.
      * rendering/ExclusionShapeInsideInfo.cpp:
      (WebCore::ExclusionShapeInsideInfo::isExclusionShapeInsideInfoEnabledForRenderBlock):
      Ditto.
      (WebCore::ExclusionShapeInsideInfo::computeShapeSize): Ditto.
      * rendering/RenderBlock.cpp:
      (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Ditto.
      * rendering/RenderBlock.h:
      (RenderBlock):
      * rendering/style/ExclusionShapeValue.h: Added.
      (WebCore):
      (ExclusionShapeValue): New type to represent the possible values of shape-inside
      and shape-outside. Only shape-inside can have a value of 'outside-shape.'
      (WebCore::ExclusionShapeValue::~ExclusionShapeValue):
      (WebCore::ExclusionShapeValue::type): Returns the value type.
      (WebCore::ExclusionShapeValue::shape): Returns <shape> value's BasicShape*.
      (WebCore::ExclusionShapeValue::operator==):
      (WebCore::ExclusionShapeInfo::createShapeValue):
      (WebCore::ExclusionShapeInfo::createOutsideValue):
      (WebCore::ExclusionShapeValue::ExclusionShapeValue):
      * rendering/style/RenderStyle.h:
      * rendering/style/StyleRareNonInheritedData.h:
      (StyleRareNonInheritedData):
      
      LayoutTests:
      
      Adding tests to make sure the 'outside-shape' value properly applies only to the
      shape-inside property.
      
      * fast/exclusions/parsing-wrap-shape-inside-expected.txt:
      * fast/exclusions/parsing-wrap-shape-outside-expected.txt:
      * fast/exclusions/script-tests/parsing-wrap-shape-inside.js:
      * fast/exclusions/script-tests/parsing-wrap-shape-outside.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135314 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d9aa3107
    • hclam@chromium.org's avatar
      [chromium] Make lazy image decoding thread-safe · 92b670dc
      hclam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102721
      
      Reviewed by Stephen White.
      
      Source/WebCore:
      
      Added mutex to LazyDecodingPixelRef such that there is no parallel
      onLockPixels() running on multiple threads.
      
      Added mutex to ImageFrameGenerator to protect the use of raw image
      data.
      
      The result is that we can decode on threads other than the main
      thread while data is being supplied on the main thread.
      
      New unit test:
      DeferredImageDecoderTest.decodeOnOtherThread
      
      * platform/graphics/chromium/ImageFrameGenerator.cpp:
      (WebCore::ImageFrameGenerator::setData):
      (WebCore::ImageFrameGenerator::decodeAndScale):
      * platform/graphics/chromium/ImageFrameGenerator.h:
      (ImageFrameGenerator):
      * platform/graphics/chromium/LazyDecodingPixelRef.cpp:
      (WebCore::LazyDecodingPixelRef::onLockPixels):
      (WebCore::LazyDecodingPixelRef::onUnlockPixels):
      * platform/graphics/chromium/LazyDecodingPixelRef.h:
      (LazyDecodingPixelRef):
      
      Source/WebKit/chromium:
      
      Added a new unit test to verify that lazy image decoding operates
      correctly on non-main threads.
      
      * tests/DeferredImageDecoderTest.cpp:
      (Rasterizer):
      (WebCore):
      (WebCore::rasterizeMain):
      (WebCore::TEST_F):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      92b670dc
    • bfulgham@webkit.org's avatar
      [Qt] Build fix after r135217. · 14568157
      bfulgham@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102787
      
      * platform/win/WindowsExtras.h: Add #undef of NOSHLWAPI to
      allow include of <ObjBase.h> needed by Qt build.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      14568157
    • jianli@chromium.org's avatar
      Unreviewed. Updated chromium test expectations. · c6e7eda1
      jianli@chromium.org authored
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135311 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6e7eda1
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r135295. · cee39327
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/135295
      https://bugs.webkit.org/show_bug.cgi?id=102834
      
      This patch causes assertion to some layout tests on chromium
      (Requested by jianli on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-20
      
      Source/WebCore:
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * loader/FrameLoadRequest.cpp: Removed.
      * loader/FrameLoadRequest.h:
      (WebCore::FrameLoadRequest::FrameLoadRequest):
      (FrameLoadRequest):
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::load):
      * loader/FrameLoader.h:
      (FrameLoader):
      * page/DragController.cpp:
      (WebCore::DragController::performDrag):
      * plugins/PluginView.cpp:
      (WebCore::PluginView::performRequest):
      
      Source/WebKit/blackberry:
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::load):
      (BlackBerry::WebKit::WebPagePrivate::loadString):
      * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):
      
      Source/WebKit/chromium:
      
      * src/WebFrameImpl.cpp:
      (WebKit::WebFrameImpl::loadRequest):
      (WebKit::WebFrameImpl::loadData):
      * src/WebSharedWorkerImpl.cpp:
      (WebKit::WebSharedWorkerImpl::initializeLoader):
      
      Source/WebKit/efl:
      
      * ewk/ewk_frame.cpp:
      (ewk_frame_uri_set):
      (_ewk_frame_contents_set_internal):
      
      Source/WebKit/gtk:
      
      * webkit/webkitwebframe.cpp:
      (webkit_web_frame_load_uri):
      (webkit_web_frame_load_data):
      (webkit_web_frame_load_request):
      
      Source/WebKit/mac:
      
      * Plugins/WebPluginController.mm:
      * WebView/WebFrame.mm:
      (-[WebFrame loadRequest:]):
      (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
      
      Source/WebKit/qt:
      
      * Api/qwebframe.cpp:
      (QWebFrame::QWebFrame):
      (QWebFrame::load):
      (QWebFrame::setHtml):
      (QWebFrame::setContent):
      * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
      (DumpRenderTreeSupportQt::setAlternateHtml):
      * WebCoreSupport/FrameLoaderClientQt.cpp:
      (WebCore::FrameLoaderClientQt::callErrorPageExtension):
      
      Source/WebKit/win:
      
      * WebFrame.cpp:
      (WebFrame::loadRequest):
      (WebFrame::loadData):
      
      Source/WebKit/wince:
      
      * WebView.cpp:
      (WebView::load):
      
      Source/WebKit/wx:
      
      * WebFrame.cpp:
      (WebKit::WebFrame::SetPageSource):
      
      Source/WebKit2:
      
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::performFrameLoadURLRequest):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::loadURLRequest):
      (WebKit::WebPage::loadData):
      (WebKit::WebPage::linkClicked):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135310 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cee39327
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r135293. · 129cbade
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/135293
      https://bugs.webkit.org/show_bug.cgi?id=102832
      
      This patch causes crash to some layout tests on chromium
      (Requested by jianli on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-20
      
      * bindings/v8/DOMDataStore.cpp:
      (WebCore::DOMDataStore::current):
      * bindings/v8/DOMWrapperWorld.cpp:
      * bindings/v8/DOMWrapperWorld.h:
      * bindings/v8/ScriptController.cpp:
      (WebCore::ScriptController::existingWindowShell):
      (WebCore::ScriptController::windowShell):
      (WebCore::ScriptController::evaluateInIsolatedWorld):
      (WebCore::ScriptController::currentWorldContext):
      (WebCore::ScriptController::collectIsolatedContexts):
      * bindings/v8/ScriptController.h:
      (ScriptController):
      * bindings/v8/V8Binding.h:
      (WebCore::worldForEnteredContextIfIsolated):
      * bindings/v8/V8DOMWindowShell.cpp:
      (WebCore::V8DOMWindowShell::destroyIsolatedShell):
      (WebCore):
      (WebCore::isolatedContextWeakCallback):
      (WebCore::V8DOMWindowShell::disposeContext):
      (WebCore::V8DOMWindowShell::initializeIfNeeded):
      * bindings/v8/V8DOMWindowShell.h:
      (WebCore::V8DOMWindowShell::isolated):
      (V8DOMWindowShell):
      * bindings/v8/V8PerContextData.h:
      * bindings/v8/WorldContextHandle.cpp:
      (WebCore::WorldContextHandle::WorldContextHandle):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      129cbade
    • dgrogan@chromium.org's avatar
      IndexedDB: Remove legacy enum-based constants from IDL · d7b8f2e4
      dgrogan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85315
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      These were only present in an earlier working draft of the spec and have
      been removed for 8 months. See
      http://lists.w3.org/Archives/Public/public-webapps/2012JanMar/0957.html
      
      Tests - legacy-constants.html
      
      * Modules/indexeddb/IDBCursor.cpp:
      (WebCore::IDBCursor::stringToDirection):
      * Modules/indexeddb/IDBCursor.idl:
      * Modules/indexeddb/IDBTransaction.cpp:
      (WebCore::IDBTransaction::stringToMode):
      * Modules/indexeddb/IDBTransaction.idl:
      
      LayoutTests:
      
      * storage/indexeddb/constants-expected.txt:
      * storage/indexeddb/cursor-overloads-expected.txt:
      * storage/indexeddb/cursor-overloads.html:
      * storage/indexeddb/legacy-constants-expected.txt:
      * storage/indexeddb/resources/constants.js:
      (test):
      * storage/indexeddb/resources/legacy-constants.js:
      (testObsoleteConstants):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135308 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d7b8f2e4
    • commit-queue@webkit.org's avatar
      animations/stop-animation-on-suspend.html sometimes fails on all platforms · da0120ca
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=49182
      
      Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-20
      Reviewed by Antti Koivisto.
      
      stop-animation-on-suspend incorrectly assumed that animation in a subframe would start
      roughly at document load. Keep both animations (one in main frame, one in iframe) paused
      until the iframe is loaded: this way they should run synchronised enough.
      
      Also increase the tolerance of the test slightly: measuring timing like this is inherently flaky.
      
      Remove failure expectation from all TestExpectations and remove the clearly wrong expected
      result for chromium-mac.
      
      * animations/resources/stop-animation-on-suspend-subframe.html:
      * animations/stop-animation-on-suspend.html:
      * platform/chromium/TestExpectations:
      * platform/chromium-mac/animations/stop-animation-on-suspend-expected.txt:
      * platform/efl/TestExpectations:
      * platform/gtk/TestExpectations:
      * platform/mac/TestExpectations:
      * platform/qt-arm/TestExpectations:
      * platform/win/TestExpectations:
      * platform/wincairo/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135307 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da0120ca
    • reed@google.com's avatar
      update TestExpectations before a skia change · 7cdeb50b
      reed@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=102829
      
      Reviewed by NOBODY. expectations change only.
      
      optimization for rectangular blurs (with holes) changes some images in the low bit. mark for rebaselining.
      
      * platform/chromium/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135306 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7cdeb50b
    • commit-queue@webkit.org's avatar
      Store MutationObserver callback in a hidden property for V8 · f61a46a8
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102555
      
      Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-20
      Reviewed by Adam Barth.
      
      .:
      
      Test for reference cycle leaks with mutation observers. There doesn't seem
      to be a way to check this for v8, but if you manually run you can see if it
      leaks observers.
      
      * ManualTests/leak-cycle-observer-wrapper.html: Added.
      
      Source/WebCore:
      
      To prevent circular reference leaks we should store the MutationObserver
      callback in a hidden property on the wrapper of the observer.
      
      This is done by extending the code generator to support a new owner
      argument to ::create() that lets you set the owner of the callback where
      the hidden property should be stored.
      
      Test: ManualTests/leak-cycle-observer-wrapper.html
      
      * bindings/scripts/CodeGeneratorV8.pm:
      (GenerateCallbackHeader):
      (GenerateCallbackImplementation):
      * bindings/scripts/test/V8/V8TestCallback.cpp: rebaselined.
      * bindings/scripts/test/V8/V8TestCallback.h: rebaselined.
      * bindings/v8/V8HiddenPropertyName.h:
      * bindings/v8/custom/V8MutationObserverCustom.cpp:
      (WebCore::V8MutationObserver::constructorCallback):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135305 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f61a46a8
    • ojan@chromium.org's avatar
      Generate a list of builders/test suites from the buildbot json · 7cb9d157
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102443
      
      Reviewed by Dirk Pranke.
      
      Instead of the cludgy things we do now to track which bots run which tests,
      we generate all that data from the buildbots' json files.
      This is the minimal amount to keep everything working. Once this lands,
      we can also do a bunch of followup cleanup.
      
      For now we commit the generated data. In theory, in the future, we could
      have the test results server generate the data on the fly.
      
      For the sake of easily understanding what changes when we run the generate script,
      also checkin a pretty printed version of the output. The pretty printed version
      is too large to serve as part of the flakiness dashboard though.
      
      This also has the benefit of making the dashboard load much faster since
      we no longer ever need to block on requests to buildbot.
      
      * TestResultServer/generate_builders_json.py: Added.
      (master_json_url):
      (builder_json_url):
      (cached_build_json_url):
      (fetch_json):
      (insert_builder_and_test_data):
      (main):
      * TestResultServer/generate_builders_json_unittest.py: Added.
      (GenerateBuildersJsonTest):
      (GenerateBuildersJsonTest.test_master_json_url):
      (GenerateBuildersJsonTest.test_builder_json_url):
      (GenerateBuildersJsonTest.test_cached_build_json_url):
      (GenerateBuildersJsonTest.test_generate_json_data):
      (GenerateBuildersJsonTest.test_generate_json_data.dummy_fetch_json):
      * TestResultServer/static-dashboards/builders-pretty.jsonp: Added.
      * TestResultServer/static-dashboards/builders.js:
      (LOAD_BUILDBOT_DATA):
      (BuilderGroup):
      (BuilderGroup.prototype.append):
      (BuilderGroup.prototype.master):
      (requestBuilderList):
      * TestResultServer/static-dashboards/builders.jsonp: Added.
      * TestResultServer/static-dashboards/builders_unittests.js: Added.
      * TestResultServer/static-dashboards/dashboard_base.js:
      * TestResultServer/static-dashboards/flakiness_dashboard.js:
      (showPopupForBuild):
      (htmlForTestResults):
      (htmlForIndividualTestOnAllBuildersWithResultsLinks):
      (loadExpectationsLayoutTests):
      * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
      (resetGlobals):
      (test):
      * TestResultServer/static-dashboards/loader.js:
      * TestResultServer/static-dashboards/loader_unittests.js:
      * TestResultServer/static-dashboards/run-embedded-unittests.html:
      * TestResultServer/static-dashboards/run-unittests.html:
      * TestResultServer/static-dashboards/timeline_explorer.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135304 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7cb9d157
    • inferno@chromium.org's avatar
      Crash in FrameLoader::stopLoading. · 1bab41a0
      inferno@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=99504
      
      Reviewed by Nate Chapin.
      
      Source/WebCore:
      
      Frame can be blown away in unload event handler. Need
      to protect it with a RefPtr.
      
      Test: fast/frames/frame-unload-crash2.html
      
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::commitProvisionalLoad):
      
      LayoutTests:
      
      * fast/frames/frame-unload-crash2-expected.txt: Added.
      * fast/frames/frame-unload-crash2.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135303 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1bab41a0
    • commit-queue@webkit.org's avatar
      [WTR][Qt] Enable fixedLayout when needed by the test · 60fcbcef
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102811
      
      Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-20
      Reviewed by Kenneth Rohde Christiansen.
      
      Create a flickable view for CSS Device Adaptation tests. This is
      crucial for testing them since they will change the size of the
      viewport.
      
      * WebKitTestRunner/PlatformWebView.h:
      (PlatformWebView):
      * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
      (WTR::PlatformWebView::PlatformWebView):
      (WTR::PlatformWebView::viewSupportsOptions):
      (WTR):
      * WebKitTestRunner/qt/main.cpp:
      (main):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135302 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60fcbcef
    • krit@webkit.org's avatar
      Remove unnecessary FilterOperations header from RenderBoxModelObject · 4f8af8a5
      krit@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102821
      
      Reviewed by Ojan Vafai.
      
      No new tests, simple refactoring.
      
      * rendering/RenderBoxModelObject.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135301 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4f8af8a5
    • commit-queue@webkit.org's avatar
      [Chromium] fix FPS counter disappearing when changing page · ddf0c058
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102532
      
      Patch by Eberhard Graether <egraether@google.com> on 2012-11-20
      Reviewed by Pavel Feldman.
      
      When changing the page with opened WebInspector and active FPS counter the WebInspector is
      reloaded before the WebView switches to accelerated compositing, so the showFPSCounter call
      to WebLayerTreeView is not yet possible. This fix saves the showFPSCounter value in the
      WebSettings so it can be read when accelerated compositing is activated.
      
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::setShowFPSCounter):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135300 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ddf0c058
    • tsepez@chromium.org's avatar
      XSSAuditor::decodedSnippetForJavaScript stopping when comma encountered. · 16978253
      tsepez@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102587
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      Rather than returning an empty fragment, continue processing the body
      of a script tag when the decoded fragment reduces to nothing.
      
      Test: http/tests/security/xssAuditor/script-tag-with-actual-comma.html
      
      * html/parser/XSSAuditor.cpp:
      (WebCore::XSSAuditor::decodedSnippetForJavaScript):
      
      LayoutTests:
      
      * http/tests/security/xssAuditor/script-tag-with-actual-comma-expected.txt: Added.
      * http/tests/security/xssAuditor/script-tag-with-actual-comma.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135299 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      16978253
    • commit-queue@webkit.org's avatar
      [CSS Exclusions] writing-mode:vertical-rl shape-inside tests are incorrectly configured · 6d7e8360
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102729
      
      Patch by Hans Muller <hmuller@adobe.com> on 2012-11-20
      Reviewed by Dirk Schulze.
      
      Corrected the dimensions of the border elements in two exclusions tests.  They
      define a rectangle that's five pixels larger than the tests' rectangular
      shape-inside exclusions shapes.  They now enclose the shape-inside element's
      text contents.
      
      * fast/exclusions/shape-inside/shape-inside-polygon-rectangle-expected.html:
      * fast/exclusions/shape-inside/shape-inside-polygon-rectangle.html:
      * fast/exclusions/shape-inside/shape-inside-vertical-text-expected.html:
      * fast/exclusions/shape-inside/shape-inside-vertical-text.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135296 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d7e8360
    • simonjam@chromium.org's avatar
      Consolidate FrameLoader::load() into one function taking a FrameLoadRequest · e0ac21db
      simonjam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102151
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      There's a FIXME that we have too many FrameLoader::load*() functions. This patch consolidates 3 into 1.
      There are still a few more load functions that will be consolidated later. Using FrameLoadRequest as
      the interface into FrameLoader will also provide a place to pass in the initiator. Finally, this matches
      the refactoring done with CachedResourceRequest and CachedResourceLoader.
      
      No new tests. No change in functionality.
      
      * WebCore.exp.in:
      * loader/FrameLoadRequest.h:
      (WebCore::FrameLoadRequest::FrameLoadRequest):
      (WebCore::FrameLoadRequest::setLockHistory): These are former arguments to load().
      (WebCore::FrameLoadRequest::lockHistory): Ditto.
      (FrameLoadRequest):
      (WebCore::FrameLoadRequest::setShouldCheckNewWindowPolicy): Ditto.
      (WebCore::FrameLoadRequest::shouldCheckNewWindowPolicy): Ditto.
      (WebCore::FrameLoadRequest::substituteData): Ditto.
      (WebCore::FrameLoadRequest::setSubstituteData): Ditto.
      (WebCore::FrameLoadRequest::hasSubstituteData): Ditto.
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::load): No change in behavior, just merged it all into one function.
      * loader/FrameLoader.h:
      (FrameLoader):
      * page/DragController.cpp:
      (WebCore::DragController::performDrag):
      
      Source/WebKit/blackberry:
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::load):
      (BlackBerry::WebKit::WebPagePrivate::loadString):
      * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):
      
      Source/WebKit/chromium:
      
      * src/WebFrameImpl.cpp:
      (WebKit::WebFrameImpl::loadRequest):
      (WebKit::WebFrameImpl::loadData):
      * src/WebSharedWorkerImpl.cpp:
      (WebKit::WebSharedWorkerImpl::initializeLoader):
      
      Source/WebKit/efl:
      
      * ewk/ewk_frame.cpp:
      (_ewk_frame_contents_set_internal):
      
      Source/WebKit/gtk:
      
      * webkit/webkitwebframe.cpp:
      (webkit_web_frame_load_uri):
      (webkit_web_frame_load_data):
      (webkit_web_frame_load_request):
      
      Source/WebKit/mac:
      
      * Plugins/WebPluginController.mm:
      * WebView/WebFrame.mm:
      (-[WebFrame loadRequest:]):
      (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
      
      Source/WebKit/qt:
      
      * Api/qwebframe.cpp:
      (QWebFrame::QWebFrame):
      (QWebFrame::load):
      (QWebFrame::setHtml):
      (QWebFrame::setContent):
      * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
      (DumpRenderTreeSupportQt::setAlternateHtml):
      (qt_dump_set_accepts_editing):
      * WebCoreSupport/FrameLoaderClientQt.cpp:
      (WebCore::FrameLoaderClientQt::callErrorPageExtension):
      
      Source/WebKit/win:
      
      * WebFrame.cpp:
      (WebFrame::loadRequest):
      (WebFrame::loadData):
      
      Source/WebKit/wince:
      
      * WebView.cpp:
      (WebView::load):
      
      Source/WebKit/wx:
      
      * WebFrame.cpp:
      (WebKit::WebFrame::SetPageSource):
      
      Source/WebKit2:
      
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::performFrameLoadURLRequest):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::loadURLRequest):
      (WebKit::WebPage::loadData):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e0ac21db