1. 21 Sep, 2012 40 commits
    • barraclough@apple.com's avatar
      instanceof should not get the prototype for non-default HasInstance · b46d57b4
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=68656
      
      Reviewed by Oliver Hunt.
      
      Source/JavaScriptCore: 
      
      Instanceof is currently implemented as a sequance of three opcodes:
          check_has_instance
          get_by_id(prototype)
          op_instanceof
      There are three interesting types of base value that instanceof can be applied to:
          (A) Objects supporting default instanceof behaviour (functions, other than those created with bind)
          (B) Objects overriding the default instancecof behaviour with a custom one (API objects, bound functions)
          (C) Values that do not respond to the [[HasInstance]] trap.
      Currently check_has_instance handles case (C), leaving the op_instanceof opcode to handle (A) & (B). There are
      two problems with this apporach. Firstly, this is suboptimal for case (A), since we have to check for
      hasInstance support twice (once in check_has_instance, then for default behaviour in op_instanceof). Secondly,
      this means that in cases (B) we also perform the get_by_id, which is both suboptimal and an observable spec
      violation.
      
      The fix here is to move handing of non-default instanceof (cases (B)) to the check_has_instance op, leaving
      op_instanceof to handle only cases (A).
      
      * API/JSCallbackObject.h:
      (JSCallbackObject):
      * API/JSCallbackObjectFunctions.h:
      (JSC::::customHasInstance):
      * API/JSValueRef.cpp:
      (JSValueIsInstanceOfConstructor):
          - renamed hasInstance to customHasInstance
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::dump):
          - added additional parameters to check_has_instance opcode
      * bytecode/Opcode.h:
      (JSC):
      (JSC::padOpcodeName):
          - added additional parameters to check_has_instance opcode
      * bytecompiler/BytecodeGenerator.cpp:
      (JSC::BytecodeGenerator::emitCheckHasInstance):
          - added additional parameters to check_has_instance opcode
      * bytecompiler/BytecodeGenerator.h:
      (BytecodeGenerator):
          - added additional parameters to check_has_instance opcode
      * bytecompiler/NodesCodegen.cpp:
      (JSC::InstanceOfNode::emitBytecode):
          - added additional parameters to check_has_instance opcode
      * dfg/DFGByteCodeParser.cpp:
      (JSC::DFG::ByteCodeParser::parseBlock):
          - added additional parameters to check_has_instance opcode
      * interpreter/Interpreter.cpp:
      (JSC::isInvalidParamForIn):
      (JSC::Interpreter::privateExecute):
          - Add handling for non-default instanceof to op_check_has_instance
      * jit/JITInlineMethods.h:
      (JSC::JIT::emitArrayProfilingSiteForBytecodeIndex):
          - Fixed no-LLInt no_DFG build
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_check_has_instance):
      (JSC::JIT::emitSlow_op_check_has_instance):
          - check for ImplementsDefaultHasInstance, handle additional arguments to op_check_has_instance.
      (JSC::JIT::emit_op_instanceof):
      (JSC::JIT::emitSlow_op_instanceof):
          - no need to check for ImplementsDefaultHasInstance.
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_check_has_instance):
      (JSC::JIT::emitSlow_op_check_has_instance):
          - check for ImplementsDefaultHasInstance, handle additional arguments to op_check_has_instance.
      (JSC::JIT::emit_op_instanceof):
      (JSC::JIT::emitSlow_op_instanceof):
          - no need to check for ImplementsDefaultHasInstance.
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
      * jit/JITStubs.h:
          - Add handling for non-default instanceof to op_check_has_instance
      * llint/LLIntSlowPaths.cpp:
      (JSC::LLInt::LLINT_SLOW_PATH_DECL):
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
          - move check for ImplementsDefaultHasInstance, handle additional arguments to op_check_has_instance.
      * runtime/ClassInfo.h:
      (MethodTable):
      (JSC):
          - renamed hasInstance to customHasInstance
      * runtime/CommonSlowPaths.h:
      (CommonSlowPaths):
          - removed opInstanceOfSlow (this was whittled down to one function call!)
      * runtime/JSBoundFunction.cpp:
      (JSC::JSBoundFunction::customHasInstance):
      * runtime/JSBoundFunction.h:
      (JSBoundFunction):
          - renamed hasInstance to customHasInstance, reimplemented.
      * runtime/JSCell.cpp:
      (JSC::JSCell::customHasInstance):
      * runtime/JSCell.h:
      (JSCell):
      * runtime/JSObject.cpp:
      (JSC::JSObject::hasInstance):
      (JSC):
      (JSC::JSObject::defaultHasInstance):
      * runtime/JSObject.h:
      (JSObject):
      
      LayoutTests: 
      
      * fast/js/function-bind-expected.txt:
          - check in passing result.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129281 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b46d57b4
    • adamk@chromium.org's avatar
      Simplify and optimize ChildListMutationScope · b49e0c6a
      adamk@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97352
      
      Reviewed by Ryosuke Niwa.
      
      ChildListMutationScope is one of the most complicated bits of
      MutationObserver implementation. This patch aims to simplify it for
      clarity and improve its performance (mostly by just doing less).
      
      The big change is to remove the MutationAccumulatorRouter class,
      replacing it with lifetime-management logic in ChildListMutationAccumulator
      ChildListMutationScope is expected to call getOrCreate() in
      its constructor, and each scope holds a RefPtr to the accumulator.
      When the last scope holding such a RefPtr is destroyed,
      ChildListMutationAccumulator's destructor enqueues the accumulated record.
      
      This greatly reduces the number of lines of code, and condenses
      two HashMaps into one. It also reduces hash lookups, which now
      occur only on scope creation and when the refcount for a given
      accumulator reaches 0 (previously, each childAdded and willRemoveChild
      call could result in two hash lookups each).
      
      There are some minor changes as well: the ChildListMutationAccumulator::clear()
      method is gone, as it was doing more work than necessary;
      DEFINE_STATIC_LOCAL is now used instead of hand-rolled static-management
      code; ChildListMutationAccumulator::m_lastAdded is no longer a RefPtr, since it
      always points at a Node that's already being ref'd by the accumulator.
      Also various minor syntactic cleanups.
      
      No new tests, no change in behavior.
      
      * dom/ChildListMutationScope.cpp:
      (WebCore::accumulatorMap): Reduced two maps to one, and manage its lifetime with DEFINE_STATIC_LOCAL.
      (WebCore::ChildListMutationAccumulator::ChildListMutationAccumulator): Remove unnecessary call to clear() (which itself has been removed).
      (WebCore::ChildListMutationAccumulator::~ChildListMutationAccumulator): Enqueue record if not empty at destruction, and have the accumulator
      remove itself from the map.
      (WebCore::ChildListMutationAccumulator::getOrCreate): Replaces half of MutationAccumulatorRouter's job.
      (WebCore::ChildListMutationAccumulator::childAdded): Minor RefPtr usage improvements.
      (WebCore::ChildListMutationAccumulator::isRemovedNodeInOrder): Simplify RefPtr syntax.
      (WebCore::ChildListMutationAccumulator::willRemoveChild): Minor RefPtr usage improvements.
      (WebCore::ChildListMutationAccumulator::enqueueMutationRecord): Replace call to clear() with clearing m_lastAdded,
      since it's the only bit not cleared by the MutationRecord creation call. Also remove
      isEmpty check and replace with asserts now that it's a private method.
      (WebCore::ChildListMutationAccumulator::isEmpty): Added more assertions about emptiness.
      * dom/ChildListMutationScope.h:
      (WebCore):
      (ChildListMutationAccumulator): Extract the inner class to make everything easier to read.
      (WebCore::ChildListMutationScope::ChildListMutationScope): Store m_accumulator rather than m_target.
      (WebCore::ChildListMutationScope::~ChildListMutationScope): ditto
      (WebCore::ChildListMutationScope::childAdded): ditto
      (WebCore::ChildListMutationScope::willRemoveChild): ditto
      (ChildListMutationScope):
      * html/HTMLElement.cpp: Remove unused ChildListMutationScope.h #include.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129280 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b49e0c6a
    • roger_fong@apple.com's avatar
      Unreviewed. Skip this test because it relies on... · ca2554ec
      roger_fong@apple.com authored
      Unreviewed. Skip this test because it relies on sandboxed-iframe-origin-add.html which was removed in http://trac.webkit.org/changeset/129262.
      
      * platform/win/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129279 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca2554ec
    • benjamin@webkit.org's avatar
      fast/dom/Geolocation/disconnected-frame.html test asserts · a25d6520
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97376
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-21
      Reviewed by Alexey Proskuryakov.
      
      Source/WebKit2: 
      
      In GeolocationPermissionRequestManager::cancelRequestForGeolocation, we access an iterator
      after its value has been removed from the table.
      There are two problems with that:
      -The iterator is no longer valid after the container has been modified.
      -If it was the last element, the table has been freed and the iterator points to deleted memory.
      
      We solve the issue by keeping a copy of the ID. We could have inverted the order of the calls
      but that would make the issue less visible for future change.
      
      Testing covered by fast/dom/Geolocation/disconnected-frame.html.
      
      * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
      (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
      
      LayoutTests: 
      
      * platform/wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129278 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a25d6520
    • crogers@google.com's avatar
      BiquadFilterNode must take audio-rate parameter changes into account · 04bd8fcc
      crogers@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97369
      
      Reviewed by Kenneth Russell.
      
      BiquadFilterNode is currently ignoring any timeline or audio-rate changes to its parameters.
      We now check if any of its parameters have timeline or audio-rate changes and, if so, take
      them into account.  Otherwise, we use ordinary parameter smoothing/de-zippering which is
      the case when the parameters are adjusted, for example, from a knob or slider in the UI.
      
      * Modules/webaudio/BiquadDSPKernel.cpp:
      (WebCore::BiquadDSPKernel::updateCoefficientsIfNecessary):
      * Modules/webaudio/BiquadProcessor.cpp:
      (WebCore::BiquadProcessor::checkForDirtyCoefficients):
      * Modules/webaudio/BiquadProcessor.h:
      (WebCore::BiquadProcessor::hasSampleAccurateValues):
      (BiquadProcessor):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04bd8fcc
    • roger_fong@apple.com's avatar
      Unreviewed. Fix Windows specific accessibility test results. · 599dc6c5
      roger_fong@apple.com authored
      Missed some new lines in http://trac.webkit.org/changeset/129255.
      
      * platform/win/accessibility/aria-toggle-button-with-title-expected.txt:
      * platform/win/accessibility/canvas-fallback-content-2-expected.txt:
      * platform/win/accessibility/img-fallsback-to-title-expected.txt:
      * platform/win/accessibility/svg-image-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129276 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      599dc6c5
    • commit-queue@webkit.org's avatar
      Add support for OES_vertex_array_object in chromium · a2ae8b36
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96578
      
      Patch by Brandon Jones <bajones@google.com> on 2012-09-21
      Reviewed by Kenneth Russell.
      
      Source/Platform:
      
      Added code to allow calls to the OES_vertex_array_object extension to interface
      properly with the chromium WebGL implementation.
      
      * chromium/public/WebGraphicsContext3D.h:
      (WebGraphicsContext3D):
      (WebKit::WebGraphicsContext3D::createVertexArrayOES):
      (WebKit::WebGraphicsContext3D::deleteVertexArrayOES):
      (WebKit::WebGraphicsContext3D::isVertexArrayOES):
      (WebKit::WebGraphicsContext3D::bindVertexArrayOES):
      
      Source/WebCore:
      
      Adding basic reference counting to WebGLBuffer objects to satisfy spec requirements
      for the OES_vertex_array_object extension. Added code to allow calls to the
      OES_vertex_array_object extension to interface properly with the chromium WebGL
      implementation.
      
      Test: fast/canvas/webgl/oes-vertex-array-object.html
      
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore):
      (WebCore::WebGLRenderingContext::deleteBuffer):
      (WebCore::WebGLRenderingContext::vertexAttribPointer):
      * html/canvas/WebGLVertexArrayObjectOES.cpp:
      (WebCore::WebGLVertexArrayObjectOES::setElementArrayBuffer):
      (WebCore):
      * html/canvas/WebGLVertexArrayObjectOES.h:
      (WebGLVertexArrayObjectOES):
      (WebCore::WebGLVertexArrayObjectOES::getVertexAttribStateSize):
      * platform/chromium/support/Extensions3DChromium.cpp:
      (WebCore::Extensions3DChromium::createVertexArrayOES):
      (WebCore::Extensions3DChromium::deleteVertexArrayOES):
      (WebCore::Extensions3DChromium::isVertexArrayOES):
      (WebCore::Extensions3DChromium::bindVertexArrayOES):
      
      LayoutTests:
      
      Brought over KHRONOS conformance test for OES_vertex_array_object
      
      * fast/canvas/webgl/oes-vertex-array-object-expected.txt: Added.
      * fast/canvas/webgl/oes-vertex-array-object.html: Added.
      * platform/efl/Skipped:
      * platform/gtk-wk2/Skipped:
      * platform/mac/Skipped:
      * platform/wk2/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129275 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a2ae8b36
    • fpizlo@apple.com's avatar
      Unreviewed, fix ARM build. · ba8829bc
      fpizlo@apple.com authored
      * assembler/MacroAssemblerARMv7.h:
      (JSC::MacroAssemblerARMv7::store8):
      (MacroAssemblerARMv7):
      * offlineasm/armv7.rb:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ba8829bc
    • bashi@chromium.org's avatar
      [Chromium] Use OpenTypeVerticalData on Linux · 7f59b957
      bashi@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97277
      
      Reviewed by Tony Chang.
      
      Source/WebCore:
      
      Remove HarfBuzz dependency from GlyphPageTreeNodeSkia. Use OpenTypeVerticalData instead.
      
      No new tests. Rebaselined existing tests.
      
      * WebCore.gyp/WebCore.gyp: Added OpenTypeTypes.h and OpenTypeVerticalData.(cpp|h) for linux and android.
      * platform/graphics/FontCache.cpp:
      Inserted a space between > and > in typedef of FontVerticalDataCache so that making some compilers happy.
      (WebCore):
      * platform/graphics/SimpleFontData.h:
      (SimpleFontData): Moved declaration of m_verticalData to avoid compile warnings.
      * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
      (WebCore):
      (WebCore::FontPlatformData::verticalData): Added.
      (WebCore::FontPlatformData::openTypeTable): Added.
      * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h:
      (WebCore):
      (FontPlatformData):
      * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Removed substituteWithVerticalGlyphs().
      (WebCore::GlyphPage::fill):
      
      Source/WebKit/chromium:
      
      * features.gypi: Enable OPENTYPE_VERTICAL on linux and android.
      
      LayoutTests:
      
      Rebaselined vertical writing test expectations.
      
      * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png:
      * platform/chromium-linux/fast/dynamic/text-combine-expected.png:
      * platform/chromium-linux/fast/repaint/japanese-rl-selection-repaint-expected.png:
      * platform/chromium-linux/fast/text/international/text-spliced-font-expected.png:
      * platform/chromium-linux/fast/writing-mode/Kusa-Makura-background-canvas-expected.png:
      * platform/chromium-linux/fast/writing-mode/border-vertical-lr-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-lr-selection-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-lr-text-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-rl-selection-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-rl-text-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129273 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f59b957
    • fpizlo@apple.com's avatar
      REGRESSION (r128400): Opening Google Web Fonts page hangs or crashes · 57fb54da
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97328
      
      Reviewed by Mark Hahnenberg.
      
      It's a bad idea to emit stub code that reallocates property storage when we're in indexed
      storage mode. DFGRepatch.cpp knew this and had the appropriate check in one of the places,
      but it didn't have it in all of the places.
              
      This change also adds some more handy disassembly support, which I used to find the bug.
      
      * assembler/LinkBuffer.h:
      (JSC):
      * dfg/DFGRepatch.cpp:
      (JSC::DFG::generateProtoChainAccessStub):
      (JSC::DFG::tryCacheGetByID):
      (JSC::DFG::tryBuildGetByIDList):
      (JSC::DFG::emitPutReplaceStub):
      (JSC::DFG::emitPutTransitionStub):
      (JSC::DFG::tryCachePutByID):
      * jit/JITStubRoutine.h:
      (JSC):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129272 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57fb54da
    • commit-queue@webkit.org's avatar
      Crash in WebCore::Document::fullScreenChangeDelayTimerFired · 921569db
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97367
      
      Patch by Jeremy Apthorp <jeremya@chromium.org> on 2012-09-21
      Reviewed by Abhishek Arya.
      
      The document could be destroyed during the processing of the
      fullscreenchange event, if the document was destroyed as a result of
      one of the dispatchEvent calls.
      
      This bug isn't reliably reproducible, so no new tests.
      
      * dom/Document.cpp:
      (WebCore::Document::fullScreenChangeDelayTimerFired):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129270 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      921569db
    • weinig@apple.com's avatar
      REGRESSION (r120361) Warnings while preprocessing com.apple.WebProcess.sb.in · fd1fe81b
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=91079
      <rdar://problem/12332660>
      
      Reviewed by Anders Carlsson.
      
      * WebProcess/com.apple.WebProcess.sb.in:
      Add pragma to ignore the invalid preprocessor warnings.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129269 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd1fe81b
    • benjamin@webkit.org's avatar
      Skip fast/dom/Geolocation/disconnected-frame.html until the assertion is fixed · ec770db5
      benjamin@webkit.org authored
      Unreviewed. The test assert in Debug, skip it until this has been fixed.
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-21
      
      * platform/wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129268 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec770db5
    • psolanki@apple.com's avatar
      No need to pass order file for WebCoreTestSupport build · e1abd439
      psolanki@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97363
      
      Reviewed by David Kilzer.
      
      No new tests because no functional change.
      
      * Configurations/WebCoreTestSupport.xcconfig:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129267 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e1abd439
    • fpizlo@apple.com's avatar
      DFG CSE assumes that a holy PutByVal does not interfere with GetArrayLength, when it clearly does · 687b646a
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97373
      
      Reviewed by Mark Hahnenberg.
      
      Source/JavaScriptCore: 
      
      * dfg/DFGCSEPhase.cpp:
      (JSC::DFG::CSEPhase::pureCSE):
      (JSC::DFG::CSEPhase::getArrayLengthElimination):
      (JSC::DFG::CSEPhase::putStructureStoreElimination):
      (JSC::DFG::CSEPhase::performNodeCSE):
      * dfg/DFGGraph.h:
      (Graph):
      
      LayoutTests: 
      
      * fast/js/dfg-holy-put-by-val-interferes-with-get-array-length-expected.txt: Added.
      * fast/js/dfg-holy-put-by-val-interferes-with-get-array-length.html: Added.
      * fast/js/jsc-test-list:
      * fast/js/script-tests/dfg-holy-put-by-val-interferes-with-get-array-length.js: Added.
      (foo):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129266 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      687b646a
    • dpranke@chromium.org's avatar
      webkitpy: drop support for old TestExpectations syntax · ca66f9a2
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97364
      
      Reviewed by Ryosuke Niwa.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations.py:
      (TestExpectationParser._collect_matching_tests):
      (TestExpectationParser):
      (TestExpectationParser._tokenize_line):
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
      (SkippedTests.test_skipped_entry_dont_exist):
      (ExpectationSyntaxTests.assert_tokenize_exp):
      (ExpectationSyntaxTests.test_bare_name):
      (ExpectationSyntaxTests.test_bare_name_and_bugs):
      (ExpectationSyntaxTests.test_comments):
      (ExpectationSyntaxTests.test_config_modifiers):
      (ExpectationSyntaxTests.test_unknown_config):
      (ExpectationSyntaxTests.test_unknown_expectation):
      (ExpectationSyntaxTests.test_skip):
      (ExpectationSyntaxTests.test_slow):
      (ExpectationSyntaxTests.test_wontfix):
      (ExpectationSyntaxTests.test_blank_line):
      (ExpectationSyntaxTests.test_warnings):
      (RebaseliningTest.test_no_get_rebaselining_failures):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129265 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca66f9a2
    • simon.fraser@apple.com's avatar
      Improve WTR unresponsiveness output a little · f6942003
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97370
      
      Reviewed by Timothy Horton.
      
      Distinguish between conditions that already set the errorMessage,
      and unresponsiveness due to slow about:blank loads when WTR
      reports unresponsiveness.
      
      * WebKitTestRunner/TestInvocation.cpp:
      (WTR::TestInvocation::invoke):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129264 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f6942003
    • dpranke@chromium.org's avatar
      Roll Chromium DEPS to r158095 to pick up typo fix in test_expectations.txt · c0c25944
      dpranke@chromium.org authored
      Unreviewed, rolled DEPS.
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129263 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0c25944
    • roger_fong@apple.com's avatar
    • dpranke@chromium.org's avatar
      Roll Chromium DEPS to r158060 · 5c16d385
      dpranke@chromium.org authored
      Unreviewed, rolled DEPS.
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129261 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5c16d385
    • crogers@google.com's avatar
      Add Web Audio support for deprecated/legacy APIs · 143fd02e
      crogers@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97050
      
      Reviewed by Eric Carlson.
      
      .:
      
      * Source/cmake/WebKitFeatures.cmake:
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      The Web Audio API specification has undergone much review and some small API changes
      have been made (mostly naming-related changes).  This patch adds an ENABLE_LEGACY_WEB_AUDIO
      build option to allow ports to support the old names.
      
      Tests changed:
      audiobuffersource-playbackrate.html
      audiobuffersource.html
      note-grain-on-testing.js
      oscillator-testing.js
      
      * Configurations/FeatureDefines.xcconfig:
      * GNUmakefile.features.am:
      * Modules/webaudio/AudioBufferSourceNode.cpp:
      (WebCore::AudioBufferSourceNode::startGrain):
      (WebCore):
      (WebCore::AudioBufferSourceNode::noteGrainOn):
      * Modules/webaudio/AudioBufferSourceNode.h:
      (AudioBufferSourceNode):
      * Modules/webaudio/AudioBufferSourceNode.idl:
      * Modules/webaudio/AudioScheduledSourceNode.cpp:
      (WebCore::AudioScheduledSourceNode::start):
      (WebCore::AudioScheduledSourceNode::stop):
      (WebCore):
      (WebCore::AudioScheduledSourceNode::noteOn):
      (WebCore::AudioScheduledSourceNode::noteOff):
      * Modules/webaudio/AudioScheduledSourceNode.h:
      * Modules/webaudio/Oscillator.idl:
      * page/FeatureObserver.h:
      
      Source/WebKit/chromium:
      
      * features.gypi:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      
      LayoutTests:
      
      * webaudio/audiobuffersource-playbackrate.html:
      * webaudio/audiobuffersource.html:
      * webaudio/resources/note-grain-on-testing.js:
      (playGrain):
      * webaudio/resources/oscillator-testing.js:
      (generateExponentialOscillatorSweep):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129260 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      143fd02e
    • dpranke@chromium.org's avatar
      webkitpy: update remaining tests to use the new expectation syntax · 597c606d
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97362
      
      Reviewed by Ojan Vafai.
      
      This patch updates all the unit tests that were still using the
      old TestExpectations syntax to use the new syntax *except* for
      the tests that were specifically testing that we parsed the old
      syntax correctly.
      
      Also, a block of tests for the new syntax were duplicated, so
      I've deleted the duplicate.
      
      Note that the old syntax is still supported so this change should
      produce no visible changes.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
      (MiscTests.test_multiple_results):
      (MiscTests.test_category_expectations):
      (MiscTests.test_error_on_different_platform):
      (MiscTests.test_error_on_different_build_type):
      (MiscTests.test_overrides):
      (MiscTests.test_overrides__directory):
      (MiscTests.test_overrides__duplicate):
      (MiscTests.test_more_specific_override_resets_skip):
      (SkippedTests.check):
      (SkippedTests.test_duplicate_skipped_test_fails_lint):
      (SkippedTests.test_skipped_file_overrides_expectations):
      (SkippedTests.test_skipped_dir_overrides_expectations):
      (SkippedTests.test_skipped_file_overrides_overrides):
      (SkippedTests.test_skipped_dir_overrides_overrides):
      (ExpectationSyntaxTests.disabled_test_missing_expectation):
      (ExpectationSyntaxTests.disabled_test_missing_colon):
      (ExpectationSyntaxTests.disabled_test_too_many_colons):
      (ExpectationSyntaxTests.disabled_test_too_many_equals_signs):
      (ExpectationSyntaxTests):
      (ExpectationSyntaxTests.test_unrecognized_expectation):
      (ExpectationSyntaxTests.test_macro):
      (SemanticTests.test_bug_format):
      (SemanticTests.test_bad_bugid):
      (SemanticTests.test_missing_bugid):
      (SemanticTests.test_slow_and_timeout):
      (SemanticTests.test_rebaseline):
      (test_missing_file):
      (test_ambiguous):
      (test_more_modifiers):
      (test_order_in_file):
      (test_macro_overrides):
      (OldExpectationParserTests):
      (OldExpectationParserTests._tokenize):
      (OldExpectationParserTests.test_tokenize_extra_colon):
      (OldExpectationParserTests.test_tokenize_missing_equal):
      (OldExpectationParserTests.test_tokenize_extra_equal):
      * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
      (MainTest.test_skip_failing_tests):
      (MainTest.test_additional_expectations):
      * Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
      (TestExpectationsTestCase.test_valid_expectations):
      (TestExpectationsTestCase.test_invalid_expectations):
      (TestExpectationsTestCase.test_tab):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129259 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      597c606d
    • roger_fong@apple.com's avatar
      Unreviewed. As in https://bugs.webkit.org/show_bug.cgi?id=92916, Windows... · 5083699f
      roger_fong@apple.com authored
      Unreviewed. As in https://bugs.webkit.org/show_bug.cgi?id=92916, Windows specific results need to be added for various accessibility tests.
      
      * platform/win/accessibility/aria-toggle-button-with-title-expected.txt: Added.
      * platform/win/accessibility/canvas-fallback-content-2-expected.txt: Added.
      * platform/win/accessibility/img-fallsback-to-title-expected.txt: Added.
      * platform/win/accessibility/svg-image-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129258 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5083699f
    • pilgrim@chromium.org's avatar
      [Chromium] remove getFontFamilyForCharacters from PlatformSupport · 651734d7
      pilgrim@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96282
      
      Reviewed by Tony Chang.
      
      Migrating away from PlatformSupport. getFontFamilyForCharacters is
      moved to FontCache.h and overridden by the two platforms that
      need it (Chromium Linux and Blackberry). New files for the overrides.
      Part of a larger refactoring series. See tracking bug 82948.
      
      Source/WebCore:
      
      * PlatformBlackBerry.cmake:
      * WebCore.gypi:
      * platform/chromium/PlatformSupport.h:
      (PlatformSupport):
      * platform/graphics/FontCache.h:
      (SimpleFontFamily):
      (FontCache):
      * platform/graphics/blackberry/FontCacheBlackberry.cpp: Added.
      (WebCore):
      (WebCore::FontCache::getFontFamilyForCharacters):
      * platform/graphics/blackberry/skia/PlatformSupport.cpp:
      (WebCore):
      * platform/graphics/blackberry/skia/PlatformSupport.h:
      (PlatformSupport):
      * platform/graphics/chromium/FontCacheAndroid.cpp:
      (WebCore::FontCache::getFontDataForCharacters):
      * platform/graphics/chromium/FontCacheChromiumLinux.cpp: Added.
      (WebCore):
      (WebCore::FontCache::getFontFamilyForCharacters):
      * platform/graphics/skia/FontCacheSkia.cpp:
      (WebCore::FontCache::getFontDataForCharacters):
      
      Source/WebKit/chromium:
      
      * src/PlatformSupport.cpp:
      (WebCore):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129257 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      651734d7
    • roger_fong@apple.com's avatar
      Unreviewed. Creating some Windows specific tests. · d5780378
      roger_fong@apple.com authored
      http://trac.webkit.org/changeset/128652 changed results for these tests on Mac but Windows results should stay the same.
      
      * platform/win/fast/block/positioning: Added.
      * platform/win/fast/block/positioning/016-expected.txt: Added.
      * platform/win/fast/block/positioning/025-expected.txt: Added.
      * platform/win/fast/block/positioning/fixed-position-stacking-context-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129255 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d5780378
    • cfleizach@apple.com's avatar
      Source/WebCore: AX: WebKit exposes incorrect bounds for embedded SVG in HTML · f2c84846
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=96168
      
      Reviewed by Eric Seidel.
      
      Override absoluteFocusRingQuads() for SVG objects because the default
      implementation relies on addFocusRingRects(). In addFocusRingRects(), SVG 
      objects adds local positions for its rects instead of absolute positions.
      
      Test: accessibility/svg-bounds.html
      
      * rendering/RenderObject.h:
      (RenderObject):
      * rendering/svg/RenderSVGModelObject.cpp:
      (WebCore):
      (WebCore::RenderSVGModelObject::absoluteFocusRingQuads):
      * rendering/svg/RenderSVGModelObject.h:
      (RenderSVGModelObject):
      
      LayoutTests: WebKit exposes incorrect bounds for embedded SVG in HTML
      https://bugs.webkit.org/show_bug.cgi?id=96168
      
      Reviewed by Eric Seidel.
      
      * accessibility/svg-bounds.html: Added.
      * platform/chromium/TestExpectations:
      * platform/mac/accessibility/svg-bounds-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129254 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2c84846
    • benjamin@webkit.org's avatar
      [WK2] Add basic testing support for Geolocation · 04e047f0
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97278
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-21
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebKit2: 
      
      * Shared/API/c/WKNumber.h: Fix an unfortunate copy-paste :)
      
      * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      * WebProcess/InjectedBundle/InjectedBundle.h:
      (InjectedBundle):
      Remove the code forcing the Geolocation permissions. It was working around the normal
      Geolocation code and updating all the GeolocationController, which is a terrible idea.
      
      Tools: 
      
      Update the Geolocation testing to use the proper API in the UIProcess.
      
      * WebKitTestRunner/CMakeLists.txt:
      * WebKitTestRunner/GNUmakefile.am:
      
      * WebKitTestRunner/GeolocationProviderMock.cpp: Added.
      (WTR::startUpdatingCallback):
      (WTR::stopUpdatingCallback):
      (WTR::GeolocationProviderMock::GeolocationProvierMock):
      (WTR::GeolocationProviderMock::setMockGeolocationPosition):
      (WTR::GeolocationProviderMock::startUpdating):
      (WTR::GeolocationProviderMock::stopUpdating):
      (GeolocationProviderMock):
      The GeolocationProvider store the location update and deliver them as needed.
      
      WebCore GeolocationController do not support asynchronous update on start/stop. This is not
      a problem in this case because all the messages between the WebProcess and the UIProcess are
      asynchronous. Because of this, unlike GeolocationClientMock, we do not use a timer for event
      delivery.
      
      * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
      * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
      (WTR::InjectedBundle::setGeolocationPermission):
      (WTR::InjectedBundle::setMockGeolocationPosition):
      * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
      (InjectedBundle):
      * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
      (WTR::TestRunner::setGeolocationPermission):
      (WTR::TestRunner::setMockGeolocationPosition):
      From the InjectedBundle, we now pass the information to the UIProcess so that
      GeolocationProvider and the TestController can respond appropriately.
      
      * WebKitTestRunner/InjectedBundle/TestRunner.h:
      (TestRunner):
      * WebKitTestRunner/Target.pri:
      * WebKitTestRunner/TestController.cpp:
      (WTR::TestController::TestController):
      (WTR::decidePolicyForGeolocationPermissionRequest):
      (WTR::TestController::createOtherPage):
      (WTR::TestController::initialize):
      (WTR::TestController::setMockGeolocationPosition):
      * WebKitTestRunner/TestController.h:
      (TestController):
      (WTR::TestController::setGeolocationPermission):
      (WTR::TestController::isGeolocationPermissionAllowed):
      * WebKitTestRunner/TestInvocation.cpp:
      (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
      * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
      * WebKitTestRunner/win/WebKitTestRunner.vcproj:
      
      LayoutTests: 
      
      * platform/wk2/Skipped: Unskip the passing tests.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04e047f0
    • commit-queue@webkit.org's avatar
      [BlackBerry] Really fix bug 95488 that user can get the authentication... · 0cffe019
      commit-queue@webkit.org authored
      [BlackBerry] Really fix bug 95488 that user can get the authentication challenge dialog while the other tab has focus.
      https://bugs.webkit.org/show_bug.cgi?id=97348
      Internal PR: 186597.
      
      Internally reviewed by Yong Li, Joe Mason.
      Patch by Lianghui Chen <liachen@rim.com> on 2012-09-21
      Reviewed by Yong Li.
      
      Source/WebCore:
      
      Add a singleton AuthenticationChallengeManager to manage authentication
      challenge dialog. It does following things:
      Record page creation/deletion, so it knows what page is present or not.
      Record page visibility change so it knows when to display a dialog or not.
      Accept authentication challenge, and decide whether to postpone the
          challenge dialog based on whether there is active authentication challenge
          dialog already and whether its page is visible or not.
      When a challenge result comes back, notify the result to all clients
          authenticating for the same protection space, and then start the next
          authentication challenge from the same page, if there is one.
      When a page becomes visible, start the first authentication challenge
          dialog that has been blocked before.
      
      And to support this new AuthenticationChallengeManager, and making the
          challenge really asynchronous, NetworkJob has been updated to support
          the concept of "freeze", which means buffering all network loading status
          change but don't send them to NetworkJob clients.
      This is necessary when authentication challenge is asynchronous, as the
          previous network loading status will likely come before user make any
          decision.
      
      No new tests for platform specific internal change.
      
      * PlatformBlackBerry.cmake:
      * platform/blackberry/AuthenticationChallengeManager.cpp: Added.
      (WebCore):
      (ChallengeInfo):
      (WebCore::ChallengeInfo::ChallengeInfo):
      (AuthenticationChallengeManagerPrivate):
      (WebCore::AuthenticationChallengeManagerPrivate::AuthenticationChallengeManagerPrivate):
      (WebCore::AuthenticationChallengeManagerPrivate::resumeAuthenticationChallenge):
      (WebCore::AuthenticationChallengeManagerPrivate::startAuthenticationChallenge):
      (WebCore::AuthenticationChallengeManagerPrivate::pageExists):
      (WebCore::AuthenticationChallengeManager::AuthenticationChallengeManager):
      (WebCore::AuthenticationChallengeManager::pageCreated):
      (WebCore::AuthenticationChallengeManager::pageDeleted):
      (WebCore::AuthenticationChallengeManager::pageVisibilityChanged):
      (WebCore::AuthenticationChallengeManager::authenticationChallenge):
      (WebCore::AuthenticationChallengeManager::cancelAuthenticationChallenge):
      (WebCore::AuthenticationChallengeManager::notifyChallengeResult):
      (WebCore::AuthenticationChallengeManager::instance):
      (WebCore::AuthenticationChallengeManager::init):
      * platform/blackberry/AuthenticationChallengeManager.h:
      (WebCore):
      (AuthenticationChallengeManager):
      * platform/blackberry/PageClientBlackBerry.h:
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
      (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
      (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
      (WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
      (WebCore::MediaPlayerPrivate::notifyChallengeResult):
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
      (MediaPlayerPrivate):
      * platform/network/blackberry/NetworkJob.cpp:
      (WebCore::NetworkJob::NetworkJob):
      (WebCore::NetworkJob::~NetworkJob):
      (WebCore):
      (WebCore::NetworkJob::handleNotifyStatusReceived):
      (WebCore::NetworkJob::handleNotifyClose):
      (WebCore::NetworkJob::sendRequestWithCredentials):
      (WebCore::NetworkJob::notifyChallengeResult):
      * platform/network/blackberry/NetworkJob.h:
      (NetworkJob):
      
      Source/WebKit/blackberry:
      
      Update WebPage to use new AuthenticationChallengeManager.
      Register page creation/deletion and visibility change to the new
          AuthenticationChallengeManager.
      Initialize AuthenticationChallengeManager in GlobalInitialize() function.
      
      * Api/BlackBerryGlobal.cpp:
      (BlackBerry::WebKit::globalInitialize):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
      (BlackBerry::WebKit::WebPagePrivate::~WebPagePrivate):
      (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
      (BlackBerry::WebKit::WebPage::setVisible):
      * Api/WebPage_p.h:
      (WebPagePrivate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129251 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cffe019
    • ap@apple.com's avatar
      [WK2] Make Web Inspector work in multiple web process mode · cdcf3092
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97354
      
      Reviewed by Timothy Hatcher.
      
      * UIProcess/mac/WebInspectorProxyMac.mm: (WebKit::WebInspectorProxy::platformCreateInspectorPage):
      Tell WKView that it's related to original page, making inspector page be in the same process.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129250 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cdcf3092
    • hausmann@webkit.org's avatar
      Unreviewed, rolling out r129248. · 55c27406
      hausmann@webkit.org authored
      http://trac.webkit.org/changeset/129248
      https://bugs.webkit.org/show_bug.cgi?id=96000
      
      Broke win build
      
      * Target.pri:
      * WebCore.vcproj/WebCore.vcproj:
      * rendering/RenderingAllInOne.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55c27406
    • hausmann@webkit.org's avatar
      Make RenderingAllInOne.cpp usable for ports other than Apple/Win · 24aec3a2
      hausmann@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96000
      
      Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-21
      Reviewed by Ryosuke Niwa.
      
      RenderingAllInOne.cpp unconditionally includes RenderThemeWin. This patch separates
      it out from the file.
      
      * Target.pri: Add RenderingAllInOne.cpp to the list of supported all-in-one files.
      * WebCore.vcproj/WebCore.vcproj: Compile RenderThemeWin.cpp separately.
      * rendering/RenderingAllInOne.cpp: Don't include RenderThemeWin.cpp here.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24aec3a2
    • commit-queue@webkit.org's avatar
      REGRESSION (r127882): accessibility/spinbutton-value.html failing on GTK · c985400e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96196
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-21
      Reviewed by Martin Robinson.
      
      The "regression" is that a new test was added but the support was missing
      in the Gtk port for spin buttons.
      
      Source/WebCore:
      
      No new tests. Instead the new test which had been skipped was unskipped
      as part of this fix.
      
      * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
      (atkRole): Map SpinButtonRole to ATK_ROLE_SPIN_BUTTON
      (getInterfaceMaskFromObject): Add SpinButtonRole to the roles implementing
      the AtkValue interface.
      
      Tools:
      
      * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
      (AccessibilityUIElement::valueDescription): Updated the FIXME comment to
      indicate that this cannot be implemented until it is implemented in ATK.
      URL of the newly-filed ATK bug included for reference.
      
      LayoutTests:
      
      * platform/gtk/TestExpectations: Unskip the new test.
      * platform/gtk/accessibility/spinbutton-value-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c985400e
    • commit-queue@webkit.org's avatar
      [GTK] [Stable] Infinite recursion in WebCore::AXObjectCache::getOrCreate · 7c58a0dc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96932
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-21
      Reviewed by Martin Robinson.
      
      Source/WebCore:
      
      Make the decision based on RenderObjects rather than AccessibilityObjects
      to avoid the infinite recursion which occurs when remapAriaRoleDueToParent
      gets called.
      
      Test: platform/gtk/accessibility/remapped-aria-crash.html
      
      * accessibility/gtk/AccessibilityObjectAtk.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      
      LayoutTests:
      
      Added a new test which replicates the recursion and crash.
      
      * platform/gtk/accessibility/remapped-aria-crash-expected.txt: Added.
      * platform/gtk/accessibility/remapped-aria-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129246 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c58a0dc
    • dpranke@chromium.org's avatar
      Fix test_skip_and_wontfix failure · df97e985
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97225
      
      Unreviewed, build fix.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
      (SemanticTests.test_skip_and_wontfix):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df97e985
    • commit-queue@webkit.org's avatar
      [BlackBerry] HTML5 media does not handle SSL certificate failures · ac50457e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93324
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-09-21
      Reviewed by Eric Carlson.
      
      RIM PR: 116205
      Passed FrameLoaderClientBlackBerry's playerId to MMRPlayer::load()
      because MMRPlayer::load() added playerId as a new parameter, which
      is required to initiate a MediaSSLHandlerStream to deal with
      certificate failure when loading a "https" media url.
      
      Internally reviewed by Joe Mason <jmason@rim.com>.
      
      No new tests since there's no functional change.
      
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
      (WebCore::MediaPlayerPrivate::load):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129244 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ac50457e
    • danakj@chromium.org's avatar
      [chromium] Add setters to WebFilterOperation for IPC pickling · faef3c50
      danakj@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97147
      
      Reviewed by James Robinson.
      
      Source/Platform:
      
      These methods allow us to restore a WebFilterOperation from a blob
      of opaque data. The pickling code needs to be able to create an
      empty object and then fill in the pieces, so these setters allow it
      to do so.
      
      Test: WebFilterOperationsTest.saveAndRestore
      
      * chromium/public/WebFilterOperation.h:
      (WebKit::WebFilterOperation::amount):
      (WebKit::WebFilterOperation::dropShadowOffset):
      (WebKit::WebFilterOperation::matrix):
      (WebKit::WebFilterOperation::zoomRect):
      (WebFilterOperation):
      (WebKit::WebFilterOperation::createEmptyFilter):
      (WebKit::WebFilterOperation::setType):
      (WebKit::WebFilterOperation::setAmount):
      (WebKit::WebFilterOperation::setDropShadowOffset):
      (WebKit::WebFilterOperation::setDropShadowColor):
      (WebKit::WebFilterOperation::setMatrix):
      (WebKit::WebFilterOperation::setZoomRect):
      * chromium/src/WebFilterOperation.cpp:
      
      Source/WebKit/chromium:
      
      * tests/FilterOperationsTest.cpp:
      (WebKit):
      (WebKit::TEST):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      faef3c50
    • tony@chromium.org's avatar
      [chromium] Unreviewed, remove duplicate section of WebKit.gyp pointed out by Nico. · 5a2e055e
      tony@chromium.org authored
      * WebKit.gyp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129242 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a2e055e
    • barraclough@apple.com's avatar
      Global Math object should be configurable but isn't · dd714578
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=55343
      
      Reviewed by Oliver Hunt.
      
      Source/JavaScriptCore: 
      
      This has no performance impact.
      
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::reset):
          - Make 'Math' a regular property.
      
      LayoutTests: 
      
      Added test case.
      
      * fast/js/math-expected.txt:
      * fast/js/script-tests/math.js:
          - Added test case.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129241 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dd714578
    • commit-queue@webkit.org's avatar
      Unreviewed. Rolled DEPS. · 77d1efd8
      commit-queue@webkit.org authored
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-21
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77d1efd8
    • commit-queue@webkit.org's avatar
      [WebSocket] Receiving a large message is really slow · 36588dcc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97237
      
      Patch by Evan Wallace <evan.exe@gmail.com> on 2012-09-21
      Reviewed by Alexey Proskuryakov.
      
      WebSocketChannel always reallocates its internal buffer when it receives
      and appends new data which causes dramatic slowdowns for messages over
      2 MB in size. This patch changes the internal buffer of WebSocketChannel
      from a raw char array to a Vector<char> and uses its amortized append()
      method. This brings the time to receive a 5 MB message from 5.2 seconds
      to 0.25 seconds.
      
      This patch is only for optimization. No new tests are needed.
      
      * Modules/websockets/WebSocketChannel.cpp:
      (WebCore::WebSocketChannel::WebSocketChannel):
      (WebCore::WebSocketChannel::~WebSocketChannel):
      (WebCore::WebSocketChannel::fail):
      (WebCore::WebSocketChannel::resume):
      (WebCore::WebSocketChannel::didReceiveSocketStreamData):
      (WebCore::WebSocketChannel::appendToBuffer):
      (WebCore::WebSocketChannel::skipBuffer):
      (WebCore::WebSocketChannel::processBuffer):
      (WebCore::WebSocketChannel::resumeTimerFired):
      (WebCore::WebSocketChannel::processFrame):
      * Modules/websockets/WebSocketChannel.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129239 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36588dcc