1. 15 Aug, 2013 40 commits
    • mhahnenberg@apple.com's avatar
      <https://webkit.org/b/119833> Concurrent compilation thread should not trigger WriteBarriers · 941ab380
      mhahnenberg@apple.com authored
      Reviewed by Oliver Hunt.
      
      The concurrent compilation thread should interact minimally with the Heap, including not
      triggering WriteBarriers. This is a prerequisite for generational GC.
      
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::addOrFindConstant):
      (JSC::CodeBlock::findConstant):
      * bytecode/CodeBlock.h:
      (JSC::CodeBlock::addConstantLazily):
      * dfg/DFGByteCodeParser.cpp:
      (JSC::DFG::ByteCodeParser::getJSConstantForValue):
      (JSC::DFG::ByteCodeParser::constantUndefined):
      (JSC::DFG::ByteCodeParser::constantNull):
      (JSC::DFG::ByteCodeParser::one):
      (JSC::DFG::ByteCodeParser::constantNaN):
      (JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
      * dfg/DFGCommonData.cpp:
      (JSC::DFG::CommonData::notifyCompilingStructureTransition):
      * dfg/DFGCommonData.h:
      * dfg/DFGDesiredTransitions.cpp: Added.
      (JSC::DFG::DesiredTransition::DesiredTransition):
      (JSC::DFG::DesiredTransition::reallyAdd):
      (JSC::DFG::DesiredTransitions::DesiredTransitions):
      (JSC::DFG::DesiredTransitions::~DesiredTransitions):
      (JSC::DFG::DesiredTransitions::addLazily):
      (JSC::DFG::DesiredTransitions::reallyAdd):
      * dfg/DFGDesiredTransitions.h: Added.
      * dfg/DFGDesiredWeakReferences.cpp: Added.
      (JSC::DFG::DesiredWeakReferences::DesiredWeakReferences):
      (JSC::DFG::DesiredWeakReferences::~DesiredWeakReferences):
      (JSC::DFG::DesiredWeakReferences::addLazily):
      (JSC::DFG::DesiredWeakReferences::reallyAdd):
      * dfg/DFGDesiredWeakReferences.h: Added.
      * dfg/DFGDesiredWriteBarriers.cpp: Added.
      (JSC::DFG::DesiredWriteBarrier::DesiredWriteBarrier):
      (JSC::DFG::DesiredWriteBarrier::trigger):
      (JSC::DFG::DesiredWriteBarriers::DesiredWriteBarriers):
      (JSC::DFG::DesiredWriteBarriers::~DesiredWriteBarriers):
      (JSC::DFG::DesiredWriteBarriers::addImpl):
      (JSC::DFG::DesiredWriteBarriers::trigger):
      * dfg/DFGDesiredWriteBarriers.h: Added.
      (JSC::DFG::DesiredWriteBarriers::add):
      (JSC::DFG::initializeLazyWriteBarrier):
      * dfg/DFGFixupPhase.cpp:
      (JSC::DFG::FixupPhase::truncateConstantToInt32):
      * dfg/DFGGraph.h:
      (JSC::DFG::Graph::convertToConstant):
      * dfg/DFGJITCompiler.h:
      (JSC::DFG::JITCompiler::addWeakReference):
      * dfg/DFGPlan.cpp:
      (JSC::DFG::Plan::Plan):
      (JSC::DFG::Plan::reallyAdd):
      * dfg/DFGPlan.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * runtime/WriteBarrier.h:
      (JSC::WriteBarrierBase::set):
      (JSC::WriteBarrier::WriteBarrier):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154162 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      941ab380
    • benjamin@webkit.org's avatar
      Fix x86 32bits build after r154158 · 69c2a1d7
      benjamin@webkit.org authored
      * assembler/X86Assembler.h: Add missing #ifdef for the x86_64 instructions.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154161 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      69c2a1d7
    • darin@apple.com's avatar
      [iOS] Get iOS port off legacy clipboard · f003159b
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=116412
      
      Reviewed by Daniel Bates.
      
      * dom/Clipboard.h: Turn off legacy style clipboard for iOS.
      Next patch will be able to remove legacy style entirely!
      
      * editing/Editor.cpp:
      (WebCore::Editor::dispatchCPPEvent): Attach the frame to the
      pasteboard directly explicitly. This is a layering violation, but
      is needed until we change how iOS pasteboard communicates with the
      host to use platform strategies instead of the editor client.
      
      * editing/ios/EditorIOS.mm: Removed Editor::newGeneralClipboard and
      the include of ClipboardIOS.h.
      
      * platform/Pasteboard.h: Added the setFrame function (iOS-only) and
      frame and change count data members.
      
      * platform/ios/ClipboardIOS.h: Emptied out. Later we can remove this.
      * platform/ios/ClipboardIOS.mm: Ditto.
      
      * platform/ios/PasteboardIOS.mm:
      (WebCore::Pasteboard::Pasteboard): Initialize m_frame to zero.
      (WebCore::Pasteboard::createForCopyAndPaste): Added.
      (WebCore::Pasteboard::createPrivate): Added.
      (WebCore::Pasteboard::writePasteboard): Added. Empty function, like
      writeClipboard. Eventually need to remove or implement this.
      (WebCore::Pasteboard::setFrame): Added. Sets frame and change count.
      (WebCore::Pasteboard::hasData): Moved here from ClipboardIOS.
      (WebCore::utiTypeFromCocoaType): Ditto.
      (WebCore::cocoaTypeFromHTMLClipboardType): Ditto.
      (WebCore::Pasteboard::clear): Ditto.
      (WebCore::Pasteboard::readString): Ditto.
      (WebCore::addHTMLClipboardTypesForCocoaType): Ditto.
      (WebCore::Pasteboard::writeString): Ditto.
      (WebCore::Pasteboard::types): Ditto.
      (WebCore::Pasteboard::readFilenames): Ditto.
      
      * WebCore.exp.in: Move Clipboard destructor from Mac-only section to
      common section shared by Mac and iOS.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f003159b
    • rniwa@webkit.org's avatar
      Build fix attempt after r154156. · c9e74feb
      rniwa@webkit.org authored
      * jit/JITStubs.cpp:
      (JSC::cti_vm_handle_exception): encode!
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154159 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9e74feb
    • benjamin@webkit.org's avatar
      [JSC] x86: Use inc and dec when possible · a3ceaf4a
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=119831
      
      Reviewed by Geoffrey Garen.
      
      When incrementing or decrementing by an immediate of 1, use the insctructions
      inc and dec instead of add and sub.
      The instructions have good timing and their encoding is smaller.
      
      * assembler/MacroAssemblerX86Common.h:
      (JSC::MacroAssemblerX86_64::add32):
      (JSC::MacroAssemblerX86_64::sub32):
      * assembler/MacroAssemblerX86_64.h:
      (JSC::MacroAssemblerX86_64::add64):
      (JSC::MacroAssemblerX86_64::sub64):
      * assembler/X86Assembler.h:
      (JSC::X86Assembler::dec_r):
      (JSC::X86Assembler::decq_r):
      (JSC::X86Assembler::inc_r):
      (JSC::X86Assembler::incq_r):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154158 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a3ceaf4a
    • fpizlo@apple.com's avatar
      Sometimes, the DFG uses a GetById for typed array length accesses despite... · 151e9aff
      fpizlo@apple.com authored
      Sometimes, the DFG uses a GetById for typed array length accesses despite profiling data that indicates that it's a typed array length access
      https://bugs.webkit.org/show_bug.cgi?id=119874
      
      Reviewed by Oliver Hunt and Mark Hahnenberg.
              
      It was a confusion between heuristics in DFG::ArrayMode that are assuming that
      you'll use ForceExit if array profiles are empty, the JIT creating empty profiles
      sometimes for typed array length accesses, and the FixupPhase assuming that a
      ForceExit ArrayMode means that it should continue using a generic GetById.
      
      This fixes the confusion.
      
      * dfg/DFGFixupPhase.cpp:
      (JSC::DFG::FixupPhase::fixupNode):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      151e9aff
    • mark.lam@apple.com's avatar
      Fix crash when performing activation tearoff. · 315b9824
      mark.lam@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119848
      
      Reviewed by Oliver Hunt.
      
      The activation tearoff crash was due to a bug in the baseline JIT.
      If we have a scenario where the a baseline JIT frame calls a LLINT
      frame, an exception may be thrown while in the LLINT.
      
      Interpreter::throwException() which handles the exception will unwind
      all frames until it finds a catcher or sees a host frame. When we
      return from the LLINT to the baseline JIT code, the baseline JIT code
      errorneously sets topCallFrame to the value in its call frame register,
      and starts unwinding the stack frames that have already been unwound.
      
      The fix is:
      1. Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
         This is a more accurate description of what this runtime function
         is supposed to do i.e. it handles the exception which include doing
         nothing (if there are no more frames to unwind).
      2. Fix up topCallFrame values so that the HostCallFrameFlag is never
         set on it.
      3. Reloading the call frame register from topCallFrame when we're
         returning from a callee and detect exception handling in progress.
      
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::unwindCallFrame):
      - Ensure that topCallFrame is not set with the HostCallFrameFlag.
      (JSC::Interpreter::getStackTrace):
      * interpreter/Interpreter.h:
      (JSC::TopCallFrameSetter::TopCallFrameSetter):
      (JSC::TopCallFrameSetter::~TopCallFrameSetter):
      (JSC::NativeCallFrameTracer::NativeCallFrameTracer):
      - Ensure that topCallFrame is not set with the HostCallFrameFlag.
      * jit/JIT.h:
      * jit/JITExceptions.cpp:
      (JSC::uncaughtExceptionHandler):
      - Convenience function to get the handler for uncaught exceptions.
      * jit/JITExceptions.h:
      * jit/JITInlines.h:
      (JSC::JIT::reloadCallFrameFromTopCallFrame):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::privateCompileCTINativeCall):
      - Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
      * jit/JITStubs.cpp:
      (JSC::throwExceptionFromOpCall):
      - Ensure that topCallFrame is not set with the HostCallFrameFlag.
      (JSC::cti_vm_handle_exception):
      - Check for the case when there are no more frames to unwind.
      * jit/JITStubs.h:
      * jit/JITStubsARM.h:
      * jit/JITStubsARMv7.h:
      * jit/JITStubsMIPS.h:
      * jit/JITStubsSH4.h:
      * jit/JITStubsX86.h:
      * jit/JITStubsX86_64.h:
      - Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
      * jit/SlowPathCall.h:
      (JSC::JITSlowPathCall::call):
      - reload cfr from topcallFrame when handling an exception.
      - Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
      * jit/ThunkGenerators.cpp:
      (JSC::nativeForGenerator):
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      - reload cfr from topcallFrame when handling an exception.
      * runtime/VM.cpp:
      (JSC::VM::VM):
      - Ensure that topCallFrame is not set with the HostCallFrameFlag.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      315b9824
    • ryuan.choi@samsung.com's avatar
      [EFL] Unreviewed build fix after r154142 and r154144. · c3837396
      ryuan.choi@samsung.com authored
      Source/WebCore:
      
      * platform/efl/ErrorsEfl.cpp: Follow the changes of r154142.
      (WebCore::printError):
      (WebCore::printerNotFoundError):
      (WebCore::invalidPageRangeToPrint):
      
      Source/WebKit/efl:
      
      * ewk/ewk_frame.cpp: Follow the changes of r154142.
      (ewk_frame_uri_set):
      (ewk_frame_certificate_status_get):
      
      Source/WebKit2:
      
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::useTestingNetworkSession):
      Fixed build break when NETWORK_PROCESS is disabled after r154144.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c3837396
    • hmuller@adobe.com's avatar
      [CSS Shapes] Add support for shape-outside image values · 87ba9b6b
      hmuller@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119809
      
      Source/WebCore:
      
      Added minimal support for shape-outside image values. A new method that computes
      the excluded intervals for a horizontal line segment was added to the RasterIntervals
      class. The stub RasterShape getExcludedIntervals() method has been replaced by
      one that uses the new method.
      
      Image shapes are represented by a RasterIntervals object, which just encapsulates a
      Region object. The new getExcludedIntervals() method computes the excluded intervals
      for a horizontal line segment between y1 and y2. To find the excluded intervals we
      vertically expand each of the image shape Region's rectangles that fall within the line
      segment, so that they begin at y1 and have height = y2 - y1. The union of the expanded
      rectangles produces a new Region whose horizontal projection defines the excluded intervals.
      
      Reviewed by Alexandru Chiculita.
      
      Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html
             fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html
      
      * rendering/shapes/RasterShape.cpp:
      (WebCore::RasterShapeIntervals::getExcludedIntervals): See above.
      (WebCore::RasterShape::getExcludedIntervals): Stub method has been replaced by one that uses RasterShapeIntervals::getExcludedIntervals().
      * rendering/shapes/RasterShape.h:
      * rendering/shapes/ShapeOutsideInfo.cpp:
      (WebCore::ShapeOutsideInfo::isEnabledFor): Enable Image valued shapes.
      
      LayoutTests:
      
      Two tests to verify that the initial implementation of shape valued images is working
      for shape-outside.
      
      Reviewed by Alexandru Chiculita.
      
      * fast/shapes/shape-outside-floats/shape-outside-floats-image-001-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-image-002-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87ba9b6b
    • cfleizach@apple.com's avatar
      <https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at... · d6ea3061
      cfleizach@apple.com authored
      <https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at com.apple.WebKit2: WebKit::WebPage::accessibilityObjectForMainFramePlugin + 8
      
      Reviewed by Tim Horton.
      
      Ensure that the page is available before accessing it.
      
      * WebProcess/WebPage/mac/WebPageMac.mm:
      (WebKit::WebPage::accessibilityObjectForMainFramePlugin):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154151 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d6ea3061
    • rniwa@webkit.org's avatar
      Revert that. The test had been fixed in r154148. · 8277cc87
      rniwa@webkit.org authored
      * TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154150 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8277cc87
    • rniwa@webkit.org's avatar
      <https://webkit.org/b/119873> REGRESSION(r154057):... · ca415ba2
      rniwa@webkit.org authored
      <https://webkit.org/b/119873> REGRESSION(r154057): platform/mac/accessibility/role-subrole-roledescription.html fails
      
      Add a test expectation.
      
      * TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154149 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca415ba2
    • commit-queue@webkit.org's avatar
      AX: platform/mac/accessibility/role-subrole-roledescription.html is failing · 0c050d12
      commit-queue@webkit.org authored
      <https://webkit.org/b/119821>
      
      Updating our layout test now that accessibleElementById is able
      to fetch the math element correctly.
      
      Patch by Sam White <samuel_white@apple.com> on 2013-08-15
      Reviewed by Chris Fleizach.
      
      * platform/mac/accessibility/role-subrole-roledescription-expected.txt:
      * platform/mac/accessibility/role-subrole-roledescription.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154148 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0c050d12
    • simon.fraser@apple.com's avatar
      <https://webkit.org/b/119871> Flash of garbage pixels when playing a show on Hulu · 908b1bec
      simon.fraser@apple.com authored
      Source/WebCore:
      
      Reviewed by Tim Horton.
      
      When starting a show on Hulu, there's a layer that gets marked as
      opaque because it has a child RenderLayer whose background fills the
      compositing layer. That child RenderLayer was recently position:fixed
      but outside the viewport, so its viewportConstrainedNotCompositedReason
      was set to a non-zero value.
      
      However, we failed to clear the viewportConstrainedNotCompositedReason
      when the layer became non-fixed. This caused painting the opaque
      layer to bail in RenderLayer::paintLayer(), leaving garbage.
      
      Test: compositing/contents-opaque/fixed-to-nonfixed.html
      
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::paintLayer): Add an assertion to catch this error in future.
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::updateBacking): Make sure we clear the
      ViewportConstrainedNotCompositedReason if the layer is no longer fixed.
      
      LayoutTests:
      
      Reviewed by Tim Horton.
      
      Test that would hit the newly added assertion in case of failure.
      Was unable to create a ref test that worked reliably.
      
      * compositing/contents-opaque/fixed-to-nonfixed.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      908b1bec
    • bfulgham@apple.com's avatar
      ../WebCore: [Windows] Consolidate WebKit Bundle Handling · fd5391e4
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119869
      
      Reviewed by Tim Horton.
      
      * WebCore.vcxproj/WebCore.vcxproj: Add new WebCoreBundleWin files.
      * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
      * platform/network/curl/ResourceHandleManager.cpp:
      (WebCore::certificatePath): Use correct bundle handling logic.
      * platform/win/LocalizedStringsWin.cpp: Move bundle implementation to
      new WebCoreBundleWin.cpp file.
      * platform/win/WebCoreBundleWin.cpp: Added.
      (WebCore::createWebKitBundle):
      (WebCore::webKitBundle):
      * platform/win/WebCoreBundleWin.h: Added.
      
      ../WebKit/win: [Windows] Consolidate WebKit Bundle handling
      https://bugs.webkit.org/show_bug.cgi?id=119869
      
      Reviewed by Tim Horton.
      
      * WebCoreSupport/WebInspectorClient.cpp:
      (WebInspectorClient::openInspectorFrontend): Switch to new
      WebCore::webkitBundle() method.
      (WebInspectorFrontendClient::localizedStringsURL): Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154146 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd5391e4
    • fpizlo@apple.com's avatar
      refCount() of a StringImpl could be zero if it's static; in that case we... · d9ba5eeb
      fpizlo@apple.com authored
      refCount() of a StringImpl could be zero if it's static; in that case we shouldn't report extra memory cost
      https://bugs.webkit.org/show_bug.cgi?id=119870
      
      Reviewed by Mark Hahnenberg.
      
      * wtf/text/StringImpl.h:
      (WTF::StringImpl::costDuringGC):
      (WTF::StringImpl::isStatic):
      (WTF::StringImpl::bufferOwnership):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154145 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d9ba5eeb
    • ap@apple.com's avatar
      [WK2] NetworkProcess should use a temporary storage session for test · 099ff137
      ap@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=119855
      
              Reviewed by Darin Adler.
      
              We used to have a bundle API for WebKitTestRunner to do this in injected bundle, but
              NetworkProcess has no injected bundle.
      
              Added a WKContext API, sending the information to NetworkProcess with initialization
              parameters. Reworked WebProcess path to do the same for consistency - bundle API
              is better per se, but not when we also need to have another one.
      
              * NetworkProcess/NetworkProcess.cpp:
              (WebKit::NetworkProcess::initializeNetworkProcess):
              * Shared/Network/NetworkProcessCreationParameters.cpp:
              (WebKit::NetworkProcessCreationParameters::encode):
              (WebKit::NetworkProcessCreationParameters::decode):
              * Shared/Network/NetworkProcessCreationParameters.h:
              * Shared/WebProcessCreationParameters.cpp:
              (WebKit::WebProcessCreationParameters::encode):
              (WebKit::WebProcessCreationParameters::decode):
              * Shared/WebProcessCreationParameters.h:
              * UIProcess/API/C/WKContext.cpp:
              (WKContextUseTestingNetworkSession):
              * UIProcess/API/C/WKContextPrivate.h:
              * UIProcess/WebContext.cpp:
              (WebKit::WebContext::WebContext):
              (WebKit::WebContext::ensureNetworkProcess):
              (WebKit::WebContext::createNewWebProcess):
              (WebKit::WebContext::useTestingNetworkSession):
              * UIProcess/WebContext.h:
              * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
              * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
              * WebProcess/InjectedBundle/InjectedBundle.cpp:
              * WebProcess/InjectedBundle/InjectedBundle.h:
              * WebProcess/WebProcess.cpp:
              (WebKit::WebProcess::initializeWebProcess):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154144 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      099ff137
    • fpizlo@apple.com's avatar
      Remove some code duplication. · 04082cdc
      fpizlo@apple.com authored
              
      Rubber stamped by Mark Hahnenberg.
      
      * runtime/JSDataViewPrototype.cpp:
      (JSC::getData):
      (JSC::setData):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154143 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04082cdc
    • andersca@apple.com's avatar
      <https://webkit.org/b/119859> Frame::loader() should return a reference · df550b96
      andersca@apple.com authored
      Reviewed by Andreas Kling.
      
      Source/WebCore:
      
      * Modules/websockets/WebSocketChannel.cpp:
      (WebCore::WebSocketChannel::willOpenSocketStream):
      * WebCore.xcodeproj/project.pbxproj:
      * accessibility/AccessibilityObject.cpp:
      (WebCore::AccessibilityObject::press):
      * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
      (-[WebAccessibilityObjectWrapper remoteAccessibilityParentObject]):
      * bindings/ScriptControllerBase.cpp:
      (WebCore::ScriptController::canExecuteScripts):
      * bindings/js/ScriptController.cpp:
      (WebCore::ScriptController::initScript):
      * css/CSSFontSelector.cpp:
      (WebCore::CSSFontSelector::beginLoadTimerFired):
      * dom/DOMImplementation.cpp:
      (WebCore::DOMImplementation::createDocument):
      * dom/Document.cpp:
      (WebCore::Document::Document):
      (WebCore::Document::setVisualUpdatesAllowed):
      (WebCore::Document::updateTitle):
      (WebCore::Document::open):
      (WebCore::Document::explicitClose):
      (WebCore::Document::implicitClose):
      (WebCore::Document::userAgent):
      (WebCore::Document::canNavigate):
      (WebCore::Document::processHttpEquiv):
      (WebCore::Document::referrer):
      (WebCore::Document::documentDidResumeFromPageCache):
      (WebCore::Document::openSearchDescriptionURL):
      (WebCore::Document::finishedParsing):
      (WebCore::Document::addIconURL):
      (WebCore::Document::initSecurityContext):
      (WebCore::Document::updateURLForPushOrReplaceState):
      (WebCore::Document::loadEventDelayTimerFired):
      (WebCore::Document::loader):
      (WebCore::Document::decrementActiveParserCount):
      * history/CachedFrame.cpp:
      (WebCore::CachedFrameBase::CachedFrameBase):
      (WebCore::CachedFrameBase::restore):
      (WebCore::CachedFrame::CachedFrame):
      (WebCore::CachedFrame::open):
      (WebCore::CachedFrame::destroy):
      * history/PageCache.cpp:
      (WebCore::logCanCacheFrameDecision):
      (WebCore::logCanCachePageDecision):
      (WebCore::PageCache::canCachePageContainingThisFrame):
      (WebCore::PageCache::canCache):
      * html/HTMLAnchorElement.cpp:
      (WebCore::HTMLAnchorElement::handleClick):
      * html/HTMLAppletElement.cpp:
      (WebCore::HTMLAppletElement::updateWidget):
      * html/HTMLElement.cpp:
      (WebCore::HTMLElement::rendererIsNeeded):
      * html/HTMLEmbedElement.cpp:
      (WebCore::HTMLEmbedElement::updateWidget):
      * html/HTMLFormElement.cpp:
      (WebCore::HTMLFormElement::prepareForSubmission):
      (WebCore::HTMLFormElement::submit):
      * html/HTMLFrameElementBase.cpp:
      (WebCore::HTMLFrameElementBase::openURL):
      * html/HTMLFrameOwnerElement.cpp:
      (WebCore::HTMLFrameOwnerElement::disconnectContentFrame):
      * html/HTMLFrameSetElement.cpp:
      (WebCore::HTMLFrameSetElement::insertedInto):
      (WebCore::HTMLFrameSetElement::removedFrom):
      * html/HTMLHtmlElement.cpp:
      (WebCore::HTMLHtmlElement::insertedByParser):
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::createRenderer):
      (WebCore::HTMLMediaElement::attach):
      (WebCore::HTMLMediaElement::loadResource):
      (WebCore::HTMLMediaElement::getPluginProxyParams):
      (WebCore::HTMLMediaElement::createMediaPlayerProxy):
      (WebCore::HTMLMediaElement::updateWidget):
      (WebCore::HTMLMediaElement::mediaPlayerReferrer):
      (WebCore::HTMLMediaElement::mediaPlayerUserAgent):
      * html/HTMLObjectElement.cpp:
      (WebCore::HTMLObjectElement::parametersForPlugin):
      (WebCore::HTMLObjectElement::updateWidget):
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::isImageType):
      (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
      (WebCore::HTMLPlugInImageElement::restartSimilarPlugIns):
      * html/HTMLVideoElement.cpp:
      (WebCore::HTMLVideoElement::setDisplayMode):
      * html/ImageDocument.cpp:
      (WebCore::ImageDocumentParser::appendBytes):
      (WebCore::ImageDocumentParser::finish):
      (WebCore::ImageDocument::createDocumentStructure):
      * html/MediaDocument.cpp:
      (WebCore::MediaDocumentParser::createDocumentStructure):
      * html/PluginDocument.cpp:
      (WebCore::PluginDocumentParser::createDocumentStructure):
      (WebCore::PluginDocumentParser::appendBytes):
      (WebCore::PluginDocument::detach):
      (WebCore::PluginDocument::cancelManualPluginLoad):
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::create):
      (WebCore::WebGLRenderingContext::loseContextImpl):
      (WebCore::WebGLRenderingContext::maybeRestoreContext):
      * html/parser/HTMLConstructionSite.cpp:
      (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
      (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
      * html/parser/HTMLParserOptions.cpp:
      (WebCore::HTMLParserOptions::HTMLParserOptions):
      * html/parser/XSSAuditor.cpp:
      (WebCore::XSSAuditor::init):
      * html/parser/XSSAuditorDelegate.cpp:
      (WebCore::XSSAuditorDelegate::generateViolationReport):
      (WebCore::XSSAuditorDelegate::didBlockScript):
      * inspector/InspectorApplicationCacheAgent.cpp:
      (WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
      (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
      * inspector/InspectorFrontendClientLocal.cpp:
      (WebCore::InspectorFrontendClientLocal::openInNewTab):
      * inspector/InspectorFrontendHost.cpp:
      (WebCore::InspectorFrontendHost::loadResourceSynchronously):
      * inspector/InspectorOverlay.cpp:
      (WebCore::InspectorOverlay::overlayPage):
      * inspector/InspectorPageAgent.cpp:
      (WebCore::InspectorPageAgent::mainResourceContent):
      (WebCore::InspectorPageAgent::reload):
      (WebCore::InspectorPageAgent::navigate):
      (WebCore::allResourcesURLsForFrame):
      (WebCore::InspectorPageAgent::searchInResource):
      (WebCore::InspectorPageAgent::assertDocumentLoader):
      (WebCore::InspectorPageAgent::buildObjectForFrame):
      * inspector/InspectorResourceAgent.cpp:
      (WebCore::InspectorResourceAgent::didFailLoading):
      * loader/CookieJar.cpp:
      (WebCore::networkingContext):
      * loader/DocumentLoader.cpp:
      (WebCore::DocumentLoader::frameLoader):
      (WebCore::DocumentLoader::document):
      (WebCore::DocumentLoader::stopLoading):
      (WebCore::DocumentLoader::removeSubresourceLoader):
      (WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):
      (WebCore::DocumentLoader::iconLoadDecisionAvailable):
      (WebCore::DocumentLoader::continueIconLoadWithDecision):
      * loader/DocumentThreadableLoader.cpp:
      (WebCore::DocumentThreadableLoader::didReceiveResponse):
      (WebCore::DocumentThreadableLoader::didFinishLoading):
      (WebCore::DocumentThreadableLoader::didFail):
      (WebCore::DocumentThreadableLoader::preflightFailure):
      (WebCore::DocumentThreadableLoader::loadRequest):
      * loader/DocumentWriter.cpp:
      (WebCore::DocumentWriter::replaceDocument):
      (WebCore::DocumentWriter::createDocument):
      (WebCore::DocumentWriter::begin):
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::~FrameLoader):
      (WebCore::FrameLoader::allChildrenAreComplete):
      (WebCore::FrameLoader::allAncestorsAreComplete):
      (WebCore::FrameLoader::loadURLIntoChildFrame):
      (WebCore::FrameLoader::outgoingReferrer):
      (WebCore::FrameLoader::setOpener):
      (WebCore::FrameLoader::completed):
      (WebCore::FrameLoader::started):
      (WebCore::FrameLoader::loadFrameRequest):
      (WebCore::FrameLoader::loadURL):
      (WebCore::FrameLoader::load):
      (WebCore::FrameLoader::loadWithDocumentLoader):
      (WebCore::FrameLoader::stopAllLoaders):
      (WebCore::FrameLoader::closeOldDataSources):
      (WebCore::FrameLoader::subframeIsLoading):
      (WebCore::FrameLoader::subresourceCachePolicy):
      (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
      (WebCore::FrameLoader::detachChildren):
      (WebCore::FrameLoader::checkLoadComplete):
      (WebCore::FrameLoader::detachFromParent):
      (WebCore::FrameLoader::loadPostRequest):
      (WebCore::FrameLoader::loadResourceSynchronously):
      (WebCore::FrameLoader::shouldClose):
      (WebCore::FrameLoader::handleBeforeUnloadEvent):
      (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
      (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
      (WebCore::createWindow):
      * loader/HistoryController.cpp:
      (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
      (WebCore::HistoryController::restoreScrollPositionAndViewState):
      (WebCore::HistoryController::saveDocumentState):
      (WebCore::HistoryController::saveDocumentAndScrollState):
      (WebCore::isAssociatedToRequestedHistoryItem):
      (WebCore::HistoryController::restoreDocumentState):
      (WebCore::HistoryController::shouldStopLoadingForHistoryItem):
      (WebCore::HistoryController::goToItem):
      (WebCore::HistoryController::updateForBackForwardNavigation):
      (WebCore::HistoryController::updateForReload):
      (WebCore::HistoryController::updateForStandardLoad):
      (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
      (WebCore::HistoryController::updateForClientRedirect):
      (WebCore::HistoryController::updateForCommit):
      (WebCore::HistoryController::recursiveUpdateForCommit):
      (WebCore::HistoryController::updateForSameDocumentNavigation):
      (WebCore::HistoryController::recursiveUpdateForSameDocumentNavigation):
      (WebCore::HistoryController::initializeItem):
      (WebCore::HistoryController::createItemTree):
      (WebCore::HistoryController::recursiveSetProvisionalItem):
      (WebCore::HistoryController::recursiveGoToItem):
      (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
      (WebCore::HistoryController::updateCurrentItem):
      (WebCore::HistoryController::pushState):
      (WebCore::HistoryController::replaceState):
      * loader/ImageLoader.cpp:
      (WebCore::pageIsBeingDismissed):
      * loader/MixedContentChecker.cpp:
      (WebCore::MixedContentChecker::client):
      * loader/NavigationScheduler.cpp:
      (WebCore::ScheduledURLNavigation::fire):
      (WebCore::ScheduledURLNavigation::didStartTimer):
      (WebCore::ScheduledURLNavigation::didStopTimer):
      (WebCore::ScheduledRedirect::shouldStartTimer):
      (WebCore::ScheduledRedirect::fire):
      (WebCore::ScheduledRefresh::fire):
      (WebCore::ScheduledHistoryNavigation::fire):
      (WebCore::ScheduledFormSubmission::fire):
      (WebCore::ScheduledFormSubmission::didStartTimer):
      (WebCore::ScheduledFormSubmission::didStopTimer):
      (WebCore::NavigationScheduler::mustLockBackForwardList):
      (WebCore::NavigationScheduler::scheduleLocationChange):
      (WebCore::NavigationScheduler::scheduleFormSubmission):
      (WebCore::NavigationScheduler::scheduleRefresh):
      (WebCore::NavigationScheduler::schedule):
      * loader/PingLoader.cpp:
      (WebCore::PingLoader::loadImage):
      (WebCore::PingLoader::sendPing):
      (WebCore::PingLoader::sendViolationReport):
      (WebCore::PingLoader::PingLoader):
      * loader/PolicyChecker.cpp:
      (WebCore::PolicyChecker::checkNavigationPolicy):
      (WebCore::PolicyChecker::checkNewWindowPolicy):
      (WebCore::PolicyChecker::checkContentPolicy):
      (WebCore::PolicyChecker::cancelCheck):
      (WebCore::PolicyChecker::stopCheck):
      (WebCore::PolicyChecker::cannotShowMIMEType):
      (WebCore::PolicyChecker::continueLoadAfterWillSubmitForm):
      (WebCore::PolicyChecker::continueAfterNavigationPolicy):
      (WebCore::PolicyChecker::continueAfterNewWindowPolicy):
      (WebCore::PolicyChecker::handleUnimplementablePolicy):
      * loader/ProgressTracker.cpp:
      (WebCore::ProgressTracker::progressStarted):
      (WebCore::ProgressTracker::progressCompleted):
      (WebCore::ProgressTracker::finalProgressComplete):
      (WebCore::ProgressTracker::incrementProgress):
      (WebCore::ProgressTracker::progressHeartbeatTimerFired):
      * loader/ResourceLoadNotifier.cpp:
      (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
      (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
      (WebCore::ResourceLoadNotifier::willSendRequest):
      (WebCore::ResourceLoadNotifier::didFailToLoad):
      (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
      (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
      (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
      (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
      (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
      (WebCore::ResourceLoadNotifier::dispatchDidFailLoading):
      * loader/ResourceLoader.cpp:
      (WebCore::ResourceLoader::ResourceLoader):
      (WebCore::ResourceLoader::start):
      (WebCore::ResourceLoader::frameLoader):
      (WebCore::ResourceLoader::willSendRequest):
      * loader/SubframeLoader.cpp:
      (WebCore::SubframeLoader::pluginIsLoadable):
      (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
      (WebCore::SubframeLoader::createJavaAppletWidget):
      (WebCore::SubframeLoader::loadOrRedirectSubframe):
      (WebCore::SubframeLoader::loadSubframe):
      (WebCore::SubframeLoader::allowPlugins):
      (WebCore::SubframeLoader::shouldUsePlugin):
      (WebCore::SubframeLoader::loadPlugin):
      * loader/appcache/ApplicationCacheGroup.cpp:
      (WebCore::ApplicationCacheGroup::selectCache):
      (WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
      (WebCore::ApplicationCacheGroup::update):
      (WebCore::ApplicationCacheGroup::createResourceHandle):
      (WebCore::ApplicationCacheGroup::didReceiveResponse):
      (WebCore::ApplicationCacheGroup::didFinishLoading):
      (WebCore::ApplicationCacheGroup::didFail):
      (WebCore::ApplicationCacheGroup::addEntry):
      (WebCore::CallCacheListenerTask::performTask):
      (WebCore::ApplicationCacheGroup::postListenerTask):
      * loader/appcache/DOMApplicationCache.cpp:
      (WebCore::DOMApplicationCache::applicationCacheHost):
      * loader/archive/cf/LegacyWebArchive.cpp:
      (WebCore::LegacyWebArchive::create):
      (WebCore::LegacyWebArchive::createFromSelection):
      * loader/cache/CachedResource.cpp:
      (WebCore::CachedResource::addAdditionalRequestHeaders):
      (WebCore::CachedResource::load):
      * loader/cache/CachedResourceLoader.cpp:
      (WebCore::CachedResourceLoader::requestImage):
      (WebCore::CachedResourceLoader::checkInsecureContent):
      (WebCore::CachedResourceLoader::canRequest):
      (WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):
      (WebCore::CachedResourceLoader::requestResource):
      (WebCore::CachedResourceLoader::clientDefersImage):
      (WebCore::CachedResourceLoader::cachePolicy):
      (WebCore::CachedResourceLoader::loadDone):
      * loader/icon/IconController.cpp:
      (WebCore::IconController::commitToDatabase):
      (WebCore::IconController::startLoader):
      (WebCore::IconController::continueLoadWithDecision):
      * loader/icon/IconLoader.cpp:
      (WebCore::IconLoader::startLoading):
      (WebCore::IconLoader::notifyFinished):
      * page/Chrome.cpp:
      (WebCore::canRunModalIfDuringPageDismissal):
      * page/ContextMenuController.cpp:
      (WebCore::openNewWindow):
      (WebCore::ContextMenuController::contextMenuItemSelected):
      (WebCore::ContextMenuController::populate):
      (WebCore::ContextMenuController::checkOrEnableIfNeeded):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents):
      (WebCore::DOMWindow::postMessageTimerFired):
      (WebCore::DOMWindow::close):
      (WebCore::DOMWindow::print):
      (WebCore::DOMWindow::stop):
      (WebCore::DOMWindow::setName):
      (WebCore::DOMWindow::opener):
      (WebCore::DOMWindow::dispatchLoadEvent):
      (WebCore::DOMWindow::setLocation):
      (WebCore::DOMWindow::createWindow):
      (WebCore::DOMWindow::open):
      * page/DOMWindowExtension.cpp:
      (WebCore::DOMWindowExtension::disconnectFrameForPageCache):
      (WebCore::DOMWindowExtension::reconnectFrameFromPageCache):
      (WebCore::DOMWindowExtension::willDestroyGlobalObjectInCachedFrame):
      (WebCore::DOMWindowExtension::willDestroyGlobalObjectInFrame):
      (WebCore::DOMWindowExtension::willDetachGlobalObjectFromFrame):
      * page/DragController.cpp:
      (WebCore::DragController::performDrag):
      * page/EventHandler.cpp:
      (WebCore::EventHandler::handleMousePressEvent):
      (WebCore::EventHandler::keyEvent):
      * page/Frame.cpp:
      (WebCore::Frame::~Frame):
      (WebCore::Frame::setView):
      (WebCore::Frame::injectUserScripts):
      (WebCore::Frame::willDetachPage):
      * page/Frame.h:
      (WebCore::Frame::loader):
      * page/FrameView.cpp:
      (WebCore::FrameView::mediaType):
      (WebCore::FrameView::setFixedVisibleContentRect):
      (WebCore::FrameView::shouldUseLoadTimeDeferredRepaintDelay):
      (WebCore::FrameView::performPostLayoutTasks):
      (WebCore::FrameView::autoSizeIfEnabled):
      (WebCore::FrameView::scrollTo):
      (WebCore::FrameView::shouldSuspendScrollAnimations):
      (WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
      (WebCore::FrameView::wheelEvent):
      (WebCore::FrameView::firePaintRelatedMilestones):
      * page/History.cpp:
      (WebCore::History::stateInternal):
      (WebCore::History::stateObjectAdded):
      * page/Location.cpp:
      (WebCore::Location::setLocation):
      * page/Navigator.cpp:
      (WebCore::Navigator::userAgent):
      * page/Page.cpp:
      (WebCore::Page::goToItem):
      (WebCore::Page::refreshPlugins):
      (WebCore::Page::setDefersLoading):
      (WebCore::Page::setMemoryCacheClientCallsEnabled):
      (WebCore::Page::addRelevantRepaintedObject):
      * page/Performance.cpp:
      (WebCore::Performance::now):
      * page/PerformanceNavigation.cpp:
      (WebCore::PerformanceNavigation::type):
      (WebCore::PerformanceNavigation::redirectCount):
      * page/PerformanceResourceTiming.cpp:
      (WebCore::monotonicTimeToDocumentMilliseconds):
      * page/mac/PageMac.cpp:
      (WebCore::Page::addSchedulePair):
      (WebCore::Page::removeSchedulePair):
      * platform/ios/PasteboardIOS.mm:
      (WebCore::documentFragmentWithImageResource):
      (WebCore::documentFragmentWithRTF):
      (WebCore::Pasteboard::documentFragmentForPasteboardItemAtIndex):
      * platform/mac/HTMLConverter.mm:
      (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
      (-[WebHTMLConverter _loadFromDOMRange]):
      * platform/mac/PasteboardMac.mm:
      (WebCore::documentFragmentWithImageResource):
      (WebCore::documentFragmentWithRTF):
      (WebCore::fragmentFromWebArchive):
      * plugins/DOMMimeType.cpp:
      (WebCore::DOMMimeType::enabledPlugin):
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::scrollTo):
      * svg/SVGAElement.cpp:
      (WebCore::SVGAElement::defaultEventHandler):
      * svg/graphics/SVGImage.cpp:
      (WebCore::SVGImage::~SVGImage):
      (WebCore::SVGImage::dataChanged):
      * testing/Internals.cpp:
      (WebCore::Internals::formControlStateOfPreviousHistoryItem):
      (WebCore::Internals::setFormControlStateOfPreviousHistoryItem):
      (WebCore::Internals::getReferencedFilePaths):
      (WebCore::Internals::forceReload):
      * xml/XSLTProcessorLibxslt.cpp:
      (WebCore::docLoaderFunc):
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      (WebCore::openFunc):
      (WebCore::XMLDocumentParser::startElementNs):
      
      Source/WebKit/blackberry:
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::load):
      (BlackBerry::WebKit::WebPagePrivate::loadString):
      (BlackBerry::WebKit::WebPagePrivate::stopCurrentLoad):
      (BlackBerry::WebKit::closeURLRecursively):
      (BlackBerry::WebKit::WebPage::dispatchBeforeUnloadEvent):
      (BlackBerry::WebKit::WebPagePrivate::shouldSendResizeEvent):
      (BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):
      (BlackBerry::WebKit::WebPage::reload):
      (BlackBerry::WebKit::WebPage::reloadFromCache):
      (BlackBerry::WebKit::WebPage::textEncoding):
      (BlackBerry::WebKit::WebPage::forcedTextEncoding):
      (BlackBerry::WebKit::WebPage::setForcedTextEncoding):
      (BlackBerry::WebKit::WebPage::title):
      * WebCoreSupport/ChromeClientBlackBerry.cpp:
      (WebCore::ChromeClientBlackBerry::createWindow):
      * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidChangeLocationWithinPage):
      (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForResponse):
      (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNavigationAction):
      (WebCore::FrameLoaderClientBlackBerry::delayPolicyCheckUntilFragmentExists):
      (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNewWindowAction):
      (WebCore::FrameLoaderClientBlackBerry::createPlugin):
      (WebCore::FrameLoaderClientBlackBerry::receivedData):
      (WebCore::FrameLoaderClientBlackBerry::createDocumentLoader):
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidCommitLoad):
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):
      (WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
      (WebCore::FrameLoaderClientBlackBerry::createFrame):
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidLayout):
      (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
      (WebCore::FrameLoaderClientBlackBerry::restoreViewState):
      (WebCore::FrameLoaderClientBlackBerry::startDownload):
      (WebCore::FrameLoaderClientBlackBerry::canCachePage):
      (WebCore::FrameLoaderClientBlackBerry::didRestoreFromPageCache):
      * WebKitSupport/PagePopup.cpp:
      (BlackBerry::WebKit::PagePopup::initialize):
      
      Source/WebKit/efl:
      
      * WebCoreSupport/ChromeClientEfl.cpp:
      (kit):
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      (DumpRenderTreeSupportEfl::callShouldCloseOnWebView):
      (DumpRenderTreeSupportEfl::clearOpener):
      (DumpRenderTreeSupportEfl::frameChildren):
      (DumpRenderTreeSupportEfl::responseMimeType):
      (DumpRenderTreeSupportEfl::provisionalURL):
      * WebCoreSupport/FrameLoaderClientEfl.cpp:
      (WebCore::FrameLoaderClientEfl::callPolicyFunction):
      (WebCore::FrameLoaderClientEfl::dispatchDecidePolicyForNewWindowAction):
      (WebCore::FrameLoaderClientEfl::dispatchDecidePolicyForNavigationAction):
      (WebCore::FrameLoaderClientEfl::updateGlobalHistoryRedirectLinks):
      (WebCore::FrameLoaderClientEfl::updateGlobalHistory):
      * ewk/ewk_frame.cpp:
      (_ewk_frame_loader_efl_get):
      (_ewk_frame_smart_del):
      (_ewk_frame_contents_set_internal):
      (ewk_frame_stop):
      (ewk_frame_reload):
      (ewk_frame_reload_full):
      (ewk_frame_child_add):
      * ewk/ewk_view.cpp:
      (ewk_view_frame_focused_get):
      (ewk_view_setting_user_agent_set):
      (ewk_view_setting_encoding_custom_get):
      (ewk_view_setting_encoding_custom_set):
      
      Source/WebKit/gtk:
      
      * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
      (DumpRenderTreeSupportGtk::clearOpener):
      (DumpRenderTreeSupportGtk::shouldClose):
      * WebCoreSupport/FrameLoaderClientGtk.cpp:
      (WebKit::FrameLoaderClient::dispatchWillSubmitForm):
      (WebKit::FrameLoaderClient::committedLoad):
      (WebKit::FrameLoaderClient::dispatchDecidePolicyForResponse):
      (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
      (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
      (WebKit::FrameLoaderClient::createFrame):
      (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
      * webkit/webkitwebframe.cpp:
      (webkit_web_frame_finalize):
      (webkit_web_frame_load_uri):
      (webkit_web_frame_load_data):
      (webkit_web_frame_load_request):
      (webkit_web_frame_stop_loading):
      (webkit_web_frame_reload):
      (webkit_web_frame_get_data_source):
      (webkit_web_frame_get_provisional_data_source):
      (webkit_web_frame_get_response_mime_type):
      (webkit_web_frame_get_network_response):
      (WebKit::kit):
      * webkit/webkitwebpolicydecision.cpp:
      (webkit_web_policy_decision_use):
      (webkit_web_policy_decision_ignore):
      (webkit_web_policy_decision_download):
      * webkit/webkitwebview.cpp:
      (webkit_web_view_dispose):
      (webkit_web_view_reload):
      (webkit_web_view_reload_bypass_cache):
      (webkit_web_view_stop_loading):
      (webkit_web_view_can_show_mime_type):
      (webkit_web_view_set_custom_encoding):
      (webkit_web_view_get_custom_encoding):
      (webkit_web_view_get_subresources):
      
      Source/WebKit/mac:
      
      * Plugins/Hosted/HostedNetscapePluginStream.mm:
      (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::performRequest):
      (WebKit::NetscapePluginInstanceProxy::loadRequest):
      * Plugins/Hosted/WebHostedNetscapePluginView.mm:
      (-[WebHostedNetscapePluginView pluginView:receivedResponse:]):
      * Plugins/WebBaseNetscapePluginView.mm:
      (-[WebBaseNetscapePluginView requestWithURLCString:]):
      * Plugins/WebNetscapePluginStream.mm:
      (WebNetscapePluginStream::WebNetscapePluginStream):
      * Plugins/WebNetscapePluginView.mm:
      (-[WebNetscapePluginView loadStream]):
      (-[WebNetscapePluginView pluginView:receivedResponse:]):
      (-[WebNetscapePluginView loadPluginRequest:]):
      (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
      * Plugins/WebPluginController.mm:
      * WebCoreSupport/WebFrameLoaderClient.mm:
      (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
      (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
      (WebFrameLoaderClient::dispatchWillSubmitForm):
      (WebFrameLoaderClient::updateGlobalHistory):
      (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
      (WebFrameLoaderClient::restoreViewState):
      (WebFrameLoaderClient::transitionToCommittedForNewPage):
      (WebFrameLoaderClient::createFrame):
      * WebCoreSupport/WebFrameNetworkingContext.mm:
      (WebFrameNetworkingContext::blockedError):
      * WebCoreSupport/WebPlatformStrategies.mm:
      (WebPlatformStrategies::getPluginInfo):
      * WebView/WebFrame.mm:
      (kit):
      (-[WebFrame _dataSource]):
      (-[WebFrame _canProvideDocumentSource]):
      (-[WebFrame _commitData:]):
      (-[WebFrame _firstLayoutDone]):
      (-[WebFrame _loadType]):
      (-[WebFrame _cacheabilityDictionary]):
      (-[WebFrame _clearOpener]):
      (-[WebFrame provisionalDataSource]):
      (-[WebFrame dataSource]):
      (-[WebFrame loadRequest:]):
      (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
      (-[WebFrame loadArchive:]):
      (-[WebFrame stopLoading]):
      (-[WebFrame reload]):
      (-[WebFrame reloadFromOrigin]):
      * WebView/WebHTMLRepresentation.mm:
      (-[WebHTMLRepresentation receivedData:withDataSource:]):
      * WebView/WebHTMLView.mm:
      (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
      * WebView/WebPDFView.mm:
      (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
      * WebView/WebRenderLayer.mm:
      (-[WebRenderLayer initWithWebFrame:]):
      * WebView/WebRenderNode.mm:
      (-[WebRenderNode _initWithCoreFrame:]):
      * WebView/WebView.mm:
      (-[WebView _close]):
      (-[WebView _loadBackForwardListFromOtherView:]):
      (-[WebView _cachedResponseForURL:]):
      (-[WebView setCustomTextEncodingName:]):
      (-[WebView shouldClose]):
      
      Source/WebKit/qt:
      
      * WebCoreSupport/ChromeClientQt.cpp:
      (WebCore::ChromeClientQt::closeWindowSoon):
      * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
      (DumpRenderTreeSupportQt::shouldClose):
      (DumpRenderTreeSupportQt::responseMimeType):
      (DumpRenderTreeSupportQt::clearOpener):
      (DumpRenderTreeSupportQt::thirdPartyCookiePolicyAllows):
      (DumpRenderTreeSupportQt::setAlternateHtml):
      * WebCoreSupport/FrameLoaderClientQt.cpp:
      (WebCore::FrameLoaderClientQt::callPolicyFunction):
      (WebCore::FrameLoaderClientQt::dispatchDidStartProvisionalLoad):
      (WebCore::FrameLoaderClientQt::updateGlobalHistory):
      (WebCore::FrameLoaderClientQt::updateGlobalHistoryRedirectLinks):
      (WebCore::FrameLoaderClientQt::callErrorPageExtension):
      (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNewWindowAction):
      (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
      (WebCore::FrameLoaderClientQt::startDownload):
      (WebCore::FrameLoaderClientQt::createFrame):
      (WebCore::FrameLoaderClientQt::objectContentType):
      * WebCoreSupport/QWebFrameAdapter.cpp:
      (QWebFrameAdapter::load):
      (QWebFrameAdapter::setContent):
      (QWebFrameAdapter::setHtml):
      (QWebFrameAdapter::kit):
      (QWebFrameAdapter::title):
      (QWebFrameAdapter::clearCoreFrame):
      * WebCoreSupport/QWebPageAdapter.cpp:
      (frameLoadRequest):
      (openNewWindow):
      (QWebPageAdapter::triggerAction):
      (QWebPageAdapter::currentFrame):
      
      Source/WebKit/win:
      
      * WebCoreSupport/WebContextMenuClient.cpp:
      (WebContextMenuClient::searchWithGoogle):
      * WebCoreSupport/WebFrameLoaderClient.cpp:
      (WebFrameLoaderClient::updateGlobalHistory):
      (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
      (WebFrameLoaderClient::savePlatformDataToCachedFrame):
      (WebFrameLoaderClient::createFrame):
      (WebFrameLoaderClient::dispatchDidFailToStartPlugin):
      * WebCoreSupport/WebFrameNetworkingContext.cpp:
      (WebFrameNetworkingContext::blockedError):
      (WebFrameNetworkingContext::referrer):
      * WebElementPropertyBag.cpp:
      (WebElementPropertyBag::Read):
      * WebFrame.cpp:
      (kit):
      (WebFrame::reloadFromOrigin):
      (WebFrame::loadRequest):
      (WebFrame::loadData):
      (WebFrame::dataSource):
      (WebFrame::provisionalDataSource):
      (WebFrame::stopLoading):
      (WebFrame::reload):
      (WebFrame::firstLayoutDone):
      (WebFrame::loadType):
      (WebFrame::clearOpener):
      (WebFrame::dispatchWillSubmitForm):
      (WebFrame::receivedPolicyDecision):
      (WebFrame::dispatchDecidePolicyForResponse):
      (WebFrame::dispatchDecidePolicyForNewWindowAction):
      (WebFrame::dispatchDecidePolicyForNavigationAction):
      (WebFrame::createJavaAppletWidget):
      * WebFramePolicyListener.cpp:
      (WebFramePolicyListener::receivedPolicyDecision):
      * WebView.cpp:
      (WebView::close):
      (WebView::canShowMIMEType):
      (WebView::setCustomTextEncodingName):
      (WebView::loadBackForwardListFromOtherView):
      (WebView::shouldClose):
      
      Source/WebKit/wince:
      
      * WebCoreSupport/FrameLoaderClientWinCE.cpp:
      (WebKit::FrameLoaderClientWinCE::dispatchDecidePolicyForResponse):
      (WebKit::FrameLoaderClientWinCE::dispatchDecidePolicyForNewWindowAction):
      (WebKit::FrameLoaderClientWinCE::dispatchDecidePolicyForNavigationAction):
      (WebKit::FrameLoaderClientWinCE::dispatchWillSubmitForm):
      * WebCoreSupport/FrameNetworkingContextWinCE.cpp:
      (WebKit::FrameNetworkingContextWinCE::referrer):
      * WebView.cpp:
      (WebView::createFrame):
      (WebView::load):
      (WebView::reload):
      (WebView::stop):
      
      Source/WebKit2:
      
      * Shared/WebRenderLayer.cpp:
      (WebKit::WebRenderLayer::create):
      * Shared/WebRenderObject.cpp:
      (WebKit::WebRenderObject::create):
      * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
      (WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
      (WKBundleFrameGetFrameLoadState):
      (WKBundleFrameClearOpener):
      (WKBundleFrameCallShouldCloseOnWebView):
      * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
      (WebKit::InjectedBundleNodeHandle::documentFrame):
      (WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
      (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
      * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
      (WebKit::InjectedBundleDOMWindowExtension::frame):
      * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
      (WebKit::InjectedBundleHitTestResult::frame):
      (WebKit::InjectedBundleHitTestResult::targetFrame):
      * WebProcess/Plugins/PDF/PDFPlugin.mm:
      (WebKit::PDFPlugin::clickedLink):
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::webPage):
      (WebKit::PluginView::didFailToInitializePlugin):
      (WebKit::PluginView::performFrameLoadURLRequest):
      (WebKit::PluginView::userAgent):
      (WebKit::PluginView::loadURL):
      (WebKit::PluginView::cancelManualStreamLoad):
      (WebKit::PluginView::proxiesForURL):
      * WebProcess/WebCoreSupport/WebChromeClient.cpp:
      (WebKit::WebChromeClient::focusedElementChanged):
      (WebKit::WebChromeClient::focusedFrameChanged):
      (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
      (WebKit::WebChromeClient::closeWindowSoon):
      (WebKit::WebChromeClient::runJavaScriptAlert):
      (WebKit::WebChromeClient::runJavaScriptConfirm):
      (WebKit::WebChromeClient::runJavaScriptPrompt):
      (WebKit::WebChromeClient::unavailablePluginButtonClicked):
      (WebKit::WebChromeClient::print):
      (WebKit::WebChromeClient::exceededDatabaseQuota):
      (WebKit::WebChromeClient::runOpenPanel):
      * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
      (WebKit::WebContextMenuClient::searchWithGoogle):
      * WebProcess/WebCoreSupport/WebEditorClient.cpp:
      (WebKit::WebEditorClient::textFieldDidBeginEditing):
      (WebKit::WebEditorClient::textFieldDidEndEditing):
      (WebKit::WebEditorClient::textDidChangeInTextField):
      (WebKit::WebEditorClient::textDidChangeInTextArea):
      (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
      (WebKit::WebEditorClient::textWillBeDeletedInTextField):
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
      (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
      (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
      (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
      (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
      (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
      (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
      (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
      (WebKit::WebFrameLoaderClient::updateGlobalHistory):
      (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
      (WebKit::WebFrameLoaderClient::restoreViewState):
      (WebKit::WebFrameLoaderClient::createFrame):
      (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
      (WebKit::WebFrameLoaderClient::objectContentType):
      * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
      (WebKit::WebPlatformStrategies::getPluginInfo):
      * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
      (WebKit::WebFrameNetworkingContext::blockedError):
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::didReceivePolicyDecision):
      (WebKit::WebFrame::startDownload):
      (WebKit::WebFrame::source):
      (WebKit::WebFrame::contentsAsString):
      (WebKit::WebFrame::url):
      (WebKit::WebFrame::parentFrame):
      (WebKit::WebFrame::childFrames):
      (WebKit::WebFrame::stopLoading):
      (WebKit::WebFrame::frameForContext):
      (WebKit::WebFrame::provisionalURL):
      (WebKit::WebFrame::suggestedFilenameForResourceWithURL):
      (WebKit::WebFrame::mimeTypeForResourceWithURL):
      (WebKit::WebFrameFilter::shouldIncludeSubframe):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::createPlugin):
      (WebKit::WebPage::close):
      (WebKit::WebPage::tryClose):
      (WebKit::WebPage::loadURLRequest):
      (WebKit::WebPage::loadDataImpl):
      (WebKit::WebPage::linkClicked):
      (WebKit::WebPage::stopLoadingFrame):
      (WebKit::WebPage::stopLoading):
      (WebKit::WebPage::reload):
      (WebKit::WebPage::tryRestoreScrollPosition):
      (WebKit::WebPage::getMainResourceDataOfFrame):
      (WebKit::resourceDataForFrame):
      (WebKit::shouldReuseCommittedSandboxExtension):
      (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
      (WebKit::WebPage::hasLocalDataForURL):
      (WebKit::WebPage::setCustomTextEncodingName):
      (WebKit::WebPage::canPluginHandleResponse):
      (WebKit::WebPage::canShowMIMEType):
      (WebKit::WebPage::didCommitLoad):
      * WebProcess/WebPage/mac/WebPageMac.mm:
      (WebKit::WebPage::platformHasLocalDataForURL):
      (WebKit::cachedResponseForURL):
      * WebProcess/WebProcess.cpp:
      (WebKit::WebProcess::downloadRequest):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154142 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df550b96
    • commit-queue@webkit.org's avatar
      [DFG] isDouble() and isNumerical() should return true with KnownNumberUse UseKind. · c679acba
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=119794
      
      Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-15
      Reviewed by Filip Pizlo.
      
      This patch fixes ASSERTs failures in debug builds for sh4 and mips architecture.
      
      * dfg/DFGUseKind.h:
      (JSC::DFG::isNumerical):
      (JSC::DFG::isDouble):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154141 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c679acba
    • dbates@webkit.org's avatar
      <https://webkit.org/b/119863> [iOS] Upstream WebCore/editing/ios · c2360f49
      dbates@webkit.org authored
      Reviewed by David Kilzer.
      
      Use the same UUIDs for EditorIOS.mm and the group ios as in the iOS tree
      so as to make it straightforward to merge changes to the WebCore Xcode
      project file on WebKit.org with changes to the same file in the iOS tree.
      
      * WebCore.xcodeproj/project.pbxproj:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154140 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2360f49
    • fpizlo@apple.com's avatar
      http://trac.webkit.org/changeset/154120 accidentally changed DFGCapabilities... · 7ff7f63d
      fpizlo@apple.com authored
      http://trac.webkit.org/changeset/154120 accidentally changed DFGCapabilities to read the resolve type from operand 4, not 3; it should be 3.
      
      Rubber stamped by Oliver Hunt.
              
      This was causing some test crashes for me.
      
      * dfg/DFGCapabilities.cpp:
      (JSC::DFG::capabilityLevel):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154139 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7ff7f63d
    • bfulgham@apple.com's avatar
      [Windows] Unreviewed build fix after r154127. · c7b5f80b
      bfulgham@apple.com authored
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Remove two symbols that are
      now part of JavaScriptCore.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154138 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7b5f80b
    • bfulgham@apple.com's avatar
      [Windows] Unreviewed build fix after r15417. · fb71ce76
      bfulgham@apple.com authored
      * DerivedSources.cpp: Remove classes that now live in JSC.
      * WebCore.vcxproj/WebCore.vcxproj: Remove classes no longer included in WebCore.
      * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
      * bindings/js/WebCoreTypedArrayController.cpp: Add explicit namespace to avoid conflict
      with Windows 'Unknown' type.
      (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots):
      (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154137 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fb71ce76
    • bfulgham@apple.com's avatar
      [Windows] Clear up improper export declaration. · 812fa53a
      bfulgham@apple.com authored
      * runtime/ArrayBufferView.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154136 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      812fa53a
    • fpizlo@apple.com's avatar
      Remove a test that times out. · 5fe6f8c4
      fpizlo@apple.com authored
              
      Rubber stamped by Mark Hahnenberg.
              
      This test times out for me, every time. It tests code that has since been rewritten
      and has had new tests added to cover it. It's not clear that this test would be
      useful anymore even if we made it not timeout.
      
      * fast/js/array-sort-modifying-tostring-expected.txt: Removed.
      * fast/js/array-sort-modifying-tostring.html: Removed.
      * fast/js/script-tests/array-sort-modifying-tostring.js: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154135 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5fe6f8c4
    • dbates@webkit.org's avatar
      <https://webkit.org/b/119863> [iOS] Upstream WebCore/editing/ios · 6a5ff3a8
      dbates@webkit.org authored
      Reviewed by David Kilzer.
      
      * WebCore.xcodeproj/project.pbxproj:
      * editing/ios/EditorIOS.mm: Added.
      (WebCore::Editor::newGeneralClipboard):
      (WebCore::Editor::showFontPanel):
      (WebCore::Editor::showStylesPanel):
      (WebCore::Editor::showColorPanel):
      (WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):
      (WebCore::Editor::insertParagraphSeparatorInQuotedContent):
      (WebCore::styleForSelectionStart):
      (WebCore::Editor::fontForSelection):
      (WebCore::Editor::fontAttributesForSelectionStart):
      (WebCore::Editor::removeUnchangeableStyles):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154134 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a5ff3a8
    • krit@webkit.org's avatar
      Implement CSS Image filter() function · c18645db
      krit@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=119845
      
      Reviewed by Dean Jackson.
      
      Source/WebCore:
      
      The Filter Effects specification defines a new CSS Image function called
      filter(). This function takes another CSS Image as well as a filter function
      list as input and can be used by various CSS properties.
      
      Example:
      
          background-image: -webkit-filter(url(image.png), brightness(0.5))
      
      This patch implements the current definition of filter() based on other
      image generation classes like CSSCrossfadeValue.
      A new class called CSSFilterImageValue was added together with an
      image observer.
      
      The function is implemented prefixed and behind the compiler flag CSS_FILTERS.
      
      Tests: fast/filter-image/filter-image.html
             fast/filter-image/parse-filter-image.html
      
      * CMakeLists.txt: Added new files to build systems.
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.xcodeproj/project.pbxproj:
      * css/CSSAllInOne.cpp:
      * css/CSSCrossfadeValue.cpp: Share code together with CSSFilterImageValue
          in CSSImageGeneratorValue.cpp.
      (WebCore::CSSCrossfadeValue::isPending):
      (WebCore::CSSCrossfadeValue::loadSubimages):
      * css/CSSFilterImageValue.cpp: Added.
      (WebCore::CSSFilterImageValue::~CSSFilterImageValue):
      (WebCore::CSSFilterImageValue::customCssText):
      (WebCore::CSSFilterImageValue::fixedSize):
      (WebCore::CSSFilterImageValue::isPending):
      (WebCore::CSSFilterImageValue::knownToBeOpaque):
      (WebCore::CSSFilterImageValue::loadSubimages):
      (WebCore::CSSFilterImageValue::image):
      (WebCore::CSSFilterImageValue::filterImageChanged):
      (WebCore::CSSFilterImageValue::createFilterOperations):
      (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::imageChanged):
      (WebCore::CSSFilterImageValue::hasFailedOrCanceledSubresources):
      (WebCore::CSSFilterImageValue::equals):
      * css/CSSFilterImageValue.h: Added.
      (WebCore::CSSFilterImageValue::create):
      (WebCore::CSSFilterImageValue::isFixedSize):
      (WebCore::CSSFilterImageValue::CSSFilterImageValue):
      (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::FilterSubimageObserverProxy):
      (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::~FilterSubimageObserverProxy):
      (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::setReady):
      * css/CSSImageGeneratorValue.cpp: Shared code between CSSCrossfadeValue and
          CSSFilterImageValue.
      (WebCore::CSSImageGeneratorValue::image):
      (WebCore::CSSImageGeneratorValue::isFixedSize):
      (WebCore::CSSImageGeneratorValue::fixedSize):
      (WebCore::CSSImageGeneratorValue::isPending):
      (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
      (WebCore::CSSImageGeneratorValue::loadSubimages):
      (WebCore::CSSImageGeneratorValue::subimageIsPending):
      (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
      * css/CSSImageGeneratorValue.h:
      * css/CSSParser.cpp: Added parsing information for new image function.
      (WebCore::CSSParser::parseValue):
      (WebCore::CSSParser::isGeneratedImageValue):
      (WebCore::CSSParser::parseGeneratedImage):
      (WebCore::CSSParser::parseFilterImage):
      (WebCore::CSSParser::parseFilter):
      * css/CSSParser.h:
      * css/CSSValue.cpp:
      (WebCore::CSSValue::hasFailedOrCanceledSubresources):
      (WebCore::CSSValue::equals):
      (WebCore::CSSValue::cssText):
      (WebCore::CSSValue::destroy):
      * css/CSSValue.h:
      (WebCore::CSSValue::isFilterImageValue):
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::applyProperty):
      (WebCore::StyleResolver::generatedOrPendingFromValue):
      (WebCore::StyleResolver::createFilterOperations):
      * css/StyleResolver.h: StyleResolver needs to be passed to
          CSSFilterImageValue in order to resolve blur() and
          drop-shadow() function. Both needs to be resolved together
          with all other properties and can't be done earlier or later.
      * rendering/FilterEffectRenderer.cpp:
      (WebCore::FilterEffectRenderer::build): Pass an argument whether the
          intermediate filter results should be clipped or not. The filter
          property for instance doesn't clip but scales the intermediate
          image sizes.
      * rendering/FilterEffectRenderer.h:
      
      LayoutTests:
      
      Test parsing, style resolving, computed style and behavior of new
      CSS image function filter().
      
      * fast/filter-image/filter-image-expected.html: Added.
      * fast/filter-image/filter-image.html: Added.
      * fast/filter-image/parse-filter-image-expected.txt: Added.
      * fast/filter-image/parse-filter-image.html: Added.
      * fast/filter-image/resources/image.svg: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154133 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c18645db
    • fpizlo@apple.com's avatar
      Source/JavaScriptCore: Unreviewed, remove some unnecessary periods from exceptions. · 30c90fd5
      fpizlo@apple.com authored
      * runtime/JSDataViewPrototype.cpp:
      (JSC::getData):
      (JSC::setData):
      
      LayoutTests: Unreviewed, rebase the test now that we throw different exceptions.
      
      * fast/canvas/webgl/data-view-test-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154132 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      30c90fd5
    • fpizlo@apple.com's avatar
      Unreviewed, fix bindings tests after http://trac.webkit.org/changeset/154127 · 366ba5d2
      fpizlo@apple.com authored
      * bindings/scripts/test/JS/JSTestCallback.cpp:
      (WebCore::JSTestCallback::callbackWithArrayParam):
      * bindings/scripts/test/JS/JSTestCallback.h:
      * bindings/scripts/test/JS/JSTestObj.cpp:
      (WebCore::setJSTestObjTypedArrayAttr):
      * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
      (WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2):
      * bindings/scripts/test/JS/JSTestTypedefs.cpp:
      (WebCore::jsTestTypedefsPrototypeFunctionFunc):
      * bindings/scripts/test/ObjC/DOMFloat64Array.mm:
      * bindings/scripts/test/ObjC/DOMTestCallback.mm:
      * bindings/scripts/test/TestTypedArray.idl: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154131 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      366ba5d2
    • zandobersek@gmail.com's avatar
      Unreviewed GTK build fix after r154106. · bd00b296
      zandobersek@gmail.com authored
      * Source/autotools/symbols.filter: Export the proper Element::shadowRoot() symbol.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154130 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bd00b296
    • fpizlo@apple.com's avatar
      Unreviewed, fix 32-bit build. · 13a49d9e
      fpizlo@apple.com authored
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154129 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      13a49d9e
    • rniwa@webkit.org's avatar
      Qt minimum build fix after r154116. · 7bd5a339
      rniwa@webkit.org authored
      * page/FrameView.cpp:
      (WebCore::FrameView::sendResizeEventIfNeeded):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154128 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7bd5a339
    • fpizlo@apple.com's avatar
      Typed arrays should be rewritten · 0e0d9312
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119064
      
      .: 
      
      Reviewed by Oliver Hunt.
      
      Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>.
      
      * Source/autotools/symbols.filter:
      
      Source/JavaScriptCore: 
      
      Reviewed by Oliver Hunt.
              
      Typed arrays were previously deficient in several major ways:
              
      - They were defined separately in WebCore and in the jsc shell. The two
        implementations were different, and the jsc shell one was basically wrong.
        The WebCore one was quite awful, also.
              
      - Typed arrays were not visible to the JIT except through some weird hooks.
        For example, the JIT could not ask "what is the Structure that this typed
        array would have if I just allocated it from this global object". Also,
        it was difficult to wire any of the typed array intrinsics, because most
        of the functionality wasn't visible anywhere in JSC.
              
      - Typed array allocation was brain-dead. Allocating a typed array involved
        two JS objects, two GC weak handles, and three malloc allocations.
              
      - Neutering. It involved keeping tabs on all native views but not the view
        wrappers, even though the native views can autoneuter just by asking the
        buffer if it was neutered anytime you touch them; while the JS view
        wrappers are the ones that you really want to reach out to.
              
      - Common case-ing. Most typed arrays have one buffer and one view, and
        usually nobody touches the buffer. Yet we created all of that stuff
        anyway, using data structures optimized for the case where you had a lot
        of views.
              
      - Semantic goofs. Typed arrays should, in the future, behave like ES
        features rather than DOM features, for example when it comes to exceptions.
        Firefox already does this and I agree with them.
              
      This patch cleanses our codebase of these sins:
              
      - Typed arrays are almost entirely defined in JSC. Only the lifecycle
        management of native references to buffers is left to WebCore.
              
      - Allocating a typed array requires either two GC allocations (a cell and a
        copied storage vector) or one GC allocation, a malloc allocation, and a
        weak handle (a cell and a malloc'd storage vector, plus a finalizer for the
        latter). The latter is only used for oversize arrays. Remember that before
        it was 7 allocations no matter what.
              
      - Typed arrays require just 4 words of overhead: Structure*, Butterfly*,
        mode/length, void* vector. Before it was a lot more than that - remember,
        there were five additional objects that did absolutely nothing for anybody.
              
      - Native views aren't tracked by the buffer, or by the wrappers. They are
        transient. In the future we'll probably switch to not even having them be
        malloc'd.
              
      - Native array buffers have an efficient way of tracking all of their JS view
        wrappers, both for neutering, and for lifecycle management. The GC
        special-cases native array buffers. This saves a bunch of grief; for example
        it means that a JS view wrapper can refer to its buffer via the butterfly,
        which would be dead by the time we went to finalize.
              
      - Typed array semantics now match Firefox, which also happens to be where the
        standards are going. The discussion on webkit-dev seemed to confirm that
        Chrome is also heading in this direction. This includes making
        Uint8ClampedArray not a subtype of Uint8Array, and getting rid of
        ArrayBufferView as a JS-visible construct.
              
      This is up to a 10x speed-up on programs that allocate a lot of typed arrays.
      It's a 1% speed-up on Octane. It also opens up a bunch of possibilities for
      further typed array optimizations in the JSC JITs, including inlining typed
      array allocation, inlining more of the accessors, reducing the cost of type
      checks, etc.
              
      An additional property of this patch is that typed arrays are mostly
      implemented using templates. This deduplicates a bunch of code, but does mean
      that we need some hacks for exporting s_info's of template classes. See
      JSGenericTypedArrayView.h and JSTypedArrays.cpp. Those hacks are fairly
      low-impact compared to code duplication.
              
      Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>.
      
      * CMakeLists.txt:
      * DerivedSources.make:
      * GNUmakefile.list.am:
      * JSCTypedArrayStubs.h: Removed.
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * Target.pri:
      * bytecode/ByValInfo.h:
      (JSC::hasOptimizableIndexingForClassInfo):
      (JSC::jitArrayModeForClassInfo):
      (JSC::typedArrayTypeForJITArrayMode):
      * bytecode/SpeculatedType.cpp:
      (JSC::speculationFromClassInfo):
      * dfg/DFGArrayMode.cpp:
      (JSC::DFG::toTypedArrayType):
      * dfg/DFGArrayMode.h:
      (JSC::DFG::ArrayMode::typedArrayType):
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::checkArray):
      (JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
      (JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
      (JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
      (JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
      (JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
      (JSC::DFG::SpeculativeJIT::compileGetArrayLength):
      * dfg/DFGSpeculativeJIT.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * heap/CopyToken.h:
      * heap/DeferGC.h:
      (JSC::DeferGCForAWhile::DeferGCForAWhile):
      (JSC::DeferGCForAWhile::~DeferGCForAWhile):
      * heap/GCIncomingRefCounted.h: Added.
      (JSC::GCIncomingRefCounted::GCIncomingRefCounted):
      (JSC::GCIncomingRefCounted::~GCIncomingRefCounted):
      (JSC::GCIncomingRefCounted::numberOfIncomingReferences):
      (JSC::GCIncomingRefCounted::incomingReferenceAt):
      (JSC::GCIncomingRefCounted::singletonFlag):
      (JSC::GCIncomingRefCounted::hasVectorOfCells):
      (JSC::GCIncomingRefCounted::hasAnyIncoming):
      (JSC::GCIncomingRefCounted::hasSingleton):
      (JSC::GCIncomingRefCounted::singleton):
      (JSC::GCIncomingRefCounted::vectorOfCells):
      * heap/GCIncomingRefCountedInlines.h: Added.
      (JSC::::addIncomingReference):
      (JSC::::filterIncomingReferences):
      * heap/GCIncomingRefCountedSet.h: Added.
      (JSC::GCIncomingRefCountedSet::size):
      * heap/GCIncomingRefCountedSetInlines.h: Added.
      (JSC::::GCIncomingRefCountedSet):
      (JSC::::~GCIncomingRefCountedSet):
      (JSC::::addReference):
      (JSC::::sweep):
      (JSC::::removeAll):
      (JSC::::removeDead):
      * heap/Heap.cpp:
      (JSC::Heap::addReference):
      (JSC::Heap::extraSize):
      (JSC::Heap::size):
      (JSC::Heap::capacity):
      (JSC::Heap::collect):
      (JSC::Heap::decrementDeferralDepth):
      (JSC::Heap::decrementDeferralDepthAndGCIfNeeded):
      * heap/Heap.h:
      * interpreter/CallFrame.h:
      (JSC::ExecState::dataViewTable):
      * jit/JIT.h:
      * jit/JITPropertyAccess.cpp:
      (JSC::JIT::privateCompileGetByVal):
      (JSC::JIT::privateCompilePutByVal):
      (JSC::JIT::emitIntTypedArrayGetByVal):
      (JSC::JIT::emitFloatTypedArrayGetByVal):
      (JSC::JIT::emitIntTypedArrayPutByVal):
      (JSC::JIT::emitFloatTypedArrayPutByVal):
      * jsc.cpp:
      (GlobalObject::finishCreation):
      * runtime/ArrayBuffer.cpp:
      (JSC::ArrayBuffer::transfer):
      * runtime/ArrayBuffer.h:
      (JSC::ArrayBuffer::createAdopted):
      (JSC::ArrayBuffer::ArrayBuffer):
      (JSC::ArrayBuffer::gcSizeEstimateInBytes):
      (JSC::ArrayBuffer::pin):
      (JSC::ArrayBuffer::unpin):
      (JSC::ArrayBufferContents::tryAllocate):
      * runtime/ArrayBufferView.cpp:
      (JSC::ArrayBufferView::ArrayBufferView):
      (JSC::ArrayBufferView::~ArrayBufferView):
      (JSC::ArrayBufferView::setNeuterable):
      * runtime/ArrayBufferView.h:
      (JSC::ArrayBufferView::isNeutered):
      (JSC::ArrayBufferView::buffer):
      (JSC::ArrayBufferView::baseAddress):
      (JSC::ArrayBufferView::byteOffset):
      (JSC::ArrayBufferView::verifySubRange):
      (JSC::ArrayBufferView::clampOffsetAndNumElements):
      (JSC::ArrayBufferView::calculateOffsetAndLength):
      * runtime/ClassInfo.h:
      * runtime/CommonIdentifiers.h:
      * runtime/DataView.cpp: Added.
      (JSC::DataView::DataView):
      (JSC::DataView::create):
      (JSC::DataView::wrap):
      * runtime/DataView.h: Added.
      (JSC::DataView::byteLength):
      (JSC::DataView::getType):
      (JSC::DataView::get):
      (JSC::DataView::set):
      * runtime/Float32Array.h:
      * runtime/Float64Array.h:
      * runtime/GenericTypedArrayView.h: Added.
      (JSC::GenericTypedArrayView::data):
      (JSC::GenericTypedArrayView::set):
      (JSC::GenericTypedArrayView::setRange):
      (JSC::GenericTypedArrayView::zeroRange):
      (JSC::GenericTypedArrayView::zeroFill):
      (JSC::GenericTypedArrayView::length):
      (JSC::GenericTypedArrayView::byteLength):
      (JSC::GenericTypedArrayView::item):
      (JSC::GenericTypedArrayView::checkInboundData):
      (JSC::GenericTypedArrayView::getType):
      * runtime/GenericTypedArrayViewInlines.h: Added.
      (JSC::::GenericTypedArrayView):
      (JSC::::create):
      (JSC::::createUninitialized):
      (JSC::::subarray):
      (JSC::::wrap):
      * runtime/IndexingHeader.h:
      (JSC::IndexingHeader::arrayBuffer):
      (JSC::IndexingHeader::setArrayBuffer):
      * runtime/Int16Array.h:
      * runtime/Int32Array.h:
      * runtime/Int8Array.h:
      * runtime/JSArrayBuffer.cpp: Added.
      (JSC::JSArrayBuffer::JSArrayBuffer):
      (JSC::JSArrayBuffer::finishCreation):
      (JSC::JSArrayBuffer::create):
      (JSC::JSArrayBuffer::createStructure):
      (JSC::JSArrayBuffer::getOwnPropertySlot):
      (JSC::JSArrayBuffer::getOwnPropertyDescriptor):
      (JSC::JSArrayBuffer::put):
      (JSC::JSArrayBuffer::defineOwnProperty):
      (JSC::JSArrayBuffer::deleteProperty):
      (JSC::JSArrayBuffer::getOwnNonIndexPropertyNames):
      * runtime/JSArrayBuffer.h: Added.
      (JSC::JSArrayBuffer::impl):
      (JSC::toArrayBuffer):
      * runtime/JSArrayBufferConstructor.cpp: Added.
      (JSC::JSArrayBufferConstructor::JSArrayBufferConstructor):
      (JSC::JSArrayBufferConstructor::finishCreation):
      (JSC::JSArrayBufferConstructor::create):
      (JSC::JSArrayBufferConstructor::createStructure):
      (JSC::constructArrayBuffer):
      (JSC::JSArrayBufferConstructor::getConstructData):
      (JSC::JSArrayBufferConstructor::getCallData):
      * runtime/JSArrayBufferConstructor.h: Added.
      * runtime/JSArrayBufferPrototype.cpp: Added.
      (JSC::arrayBufferProtoFuncSlice):
      (JSC::JSArrayBufferPrototype::JSArrayBufferPrototype):
      (JSC::JSArrayBufferPrototype::finishCreation):
      (JSC::JSArrayBufferPrototype::create):
      (JSC::JSArrayBufferPrototype::createStructure):
      * runtime/JSArrayBufferPrototype.h: Added.
      * runtime/JSArrayBufferView.cpp: Added.
      (JSC::JSArrayBufferView::ConstructionContext::ConstructionContext):
      (JSC::JSArrayBufferView::JSArrayBufferView):
      (JSC::JSArrayBufferView::finishCreation):
      (JSC::JSArrayBufferView::getOwnPropertySlot):
      (JSC::JSArrayBufferView::getOwnPropertyDescriptor):
      (JSC::JSArrayBufferView::put):
      (JSC::JSArrayBufferView::defineOwnProperty):
      (JSC::JSArrayBufferView::deleteProperty):
      (JSC::JSArrayBufferView::getOwnNonIndexPropertyNames):
      (JSC::JSArrayBufferView::finalize):
      * runtime/JSArrayBufferView.h: Added.
      (JSC::JSArrayBufferView::sizeOf):
      (JSC::JSArrayBufferView::ConstructionContext::operator!):
      (JSC::JSArrayBufferView::ConstructionContext::structure):
      (JSC::JSArrayBufferView::ConstructionContext::vector):
      (JSC::JSArrayBufferView::ConstructionContext::length):
      (JSC::JSArrayBufferView::ConstructionContext::mode):
      (JSC::JSArrayBufferView::ConstructionContext::butterfly):
      (JSC::JSArrayBufferView::mode):
      (JSC::JSArrayBufferView::vector):
      (JSC::JSArrayBufferView::length):
      (JSC::JSArrayBufferView::offsetOfVector):
      (JSC::JSArrayBufferView::offsetOfLength):
      (JSC::JSArrayBufferView::offsetOfMode):
      * runtime/JSArrayBufferViewInlines.h: Added.
      (JSC::JSArrayBufferView::slowDownAndWasteMemoryIfNecessary):
      (JSC::JSArrayBufferView::buffer):
      (JSC::JSArrayBufferView::impl):
      (JSC::JSArrayBufferView::neuter):
      (JSC::JSArrayBufferView::byteOffset):
      * runtime/JSCell.cpp:
      (JSC::JSCell::slowDownAndWasteMemory):
      (JSC::JSCell::getTypedArrayImpl):
      * runtime/JSCell.h:
      * runtime/JSDataView.cpp: Added.
      (JSC::JSDataView::JSDataView):
      (JSC::JSDataView::create):
      (JSC::JSDataView::createUninitialized):
      (JSC::JSDataView::set):
      (JSC::JSDataView::typedImpl):
      (JSC::JSDataView::getOwnPropertySlot):
      (JSC::JSDataView::getOwnPropertyDescriptor):
      (JSC::JSDataView::slowDownAndWasteMemory):
      (JSC::JSDataView::getTypedArrayImpl):
      (JSC::JSDataView::createStructure):
      * runtime/JSDataView.h: Added.
      * runtime/JSDataViewPrototype.cpp: Added.
      (JSC::JSDataViewPrototype::JSDataViewPrototype):
      (JSC::JSDataViewPrototype::create):
      (JSC::JSDataViewPrototype::createStructure):
      (JSC::JSDataViewPrototype::getOwnPropertySlot):
      (JSC::JSDataViewPrototype::getOwnPropertyDescriptor):
      (JSC::getData):
      (JSC::setData):
      (JSC::dataViewProtoFuncGetInt8):
      (JSC::dataViewProtoFuncGetInt16):
      (JSC::dataViewProtoFuncGetInt32):
      (JSC::dataViewProtoFuncGetUint8):
      (JSC::dataViewProtoFuncGetUint16):
      (JSC::dataViewProtoFuncGetUint32):
      (JSC::dataViewProtoFuncGetFloat32):
      (JSC::dataViewProtoFuncGetFloat64):
      (JSC::dataViewProtoFuncSetInt8):
      (JSC::dataViewProtoFuncSetInt16):
      (JSC::dataViewProtoFuncSetInt32):
      (JSC::dataViewProtoFuncSetUint8):
      (JSC::dataViewProtoFuncSetUint16):
      (JSC::dataViewProtoFuncSetUint32):
      (JSC::dataViewProtoFuncSetFloat32):
      (JSC::dataViewProtoFuncSetFloat64):
      * runtime/JSDataViewPrototype.h: Added.
      * runtime/JSFloat32Array.h: Added.
      * runtime/JSFloat64Array.h: Added.
      * runtime/JSGenericTypedArrayView.h: Added.
      (JSC::JSGenericTypedArrayView::byteLength):
      (JSC::JSGenericTypedArrayView::byteSize):
      (JSC::JSGenericTypedArrayView::typedVector):
      (JSC::JSGenericTypedArrayView::canGetIndexQuickly):
      (JSC::JSGenericTypedArrayView::canSetIndexQuickly):
      (JSC::JSGenericTypedArrayView::getIndexQuicklyAsNativeValue):
      (JSC::JSGenericTypedArrayView::getIndexQuicklyAsDouble):
      (JSC::JSGenericTypedArrayView::getIndexQuickly):
      (JSC::JSGenericTypedArrayView::setIndexQuicklyToNativeValue):
      (JSC::JSGenericTypedArrayView::setIndexQuicklyToDouble):
      (JSC::JSGenericTypedArrayView::setIndexQuickly):
      (JSC::JSGenericTypedArrayView::canAccessRangeQuickly):
      (JSC::JSGenericTypedArrayView::typedImpl):
      (JSC::JSGenericTypedArrayView::createStructure):
      (JSC::JSGenericTypedArrayView::info):
      (JSC::toNativeTypedView):
      * runtime/JSGenericTypedArrayViewConstructor.h: Added.
      * runtime/JSGenericTypedArrayViewConstructorInlines.h: Added.
      (JSC::::JSGenericTypedArrayViewConstructor):
      (JSC::::finishCreation):
      (JSC::::create):
      (JSC::::createStructure):
      (JSC::constructGenericTypedArrayView):
      (JSC::::getConstructData):
      (JSC::::getCallData):
      * runtime/JSGenericTypedArrayViewInlines.h: Added.
      (JSC::::JSGenericTypedArrayView):
      (JSC::::create):
      (JSC::::createUninitialized):
      (JSC::::validateRange):
      (JSC::::setWithSpecificType):
      (JSC::::set):
      (JSC::::getOwnPropertySlot):
      (JSC::::getOwnPropertyDescriptor):
      (JSC::::put):
      (JSC::::defineOwnProperty):
      (JSC::::deleteProperty):
      (JSC::::getOwnPropertySlotByIndex):
      (JSC::::putByIndex):
      (JSC::::deletePropertyByIndex):
      (JSC::::getOwnNonIndexPropertyNames):
      (JSC::::getOwnPropertyNames):
      (JSC::::visitChildren):
      (JSC::::copyBackingStore):
      (JSC::::slowDownAndWasteMemory):
      (JSC::::getTypedArrayImpl):
      * runtime/JSGenericTypedArrayViewPrototype.h: Added.
      * runtime/JSGenericTypedArrayViewPrototypeInlines.h: Added.
      (JSC::genericTypedArrayViewProtoFuncSet):
      (JSC::genericTypedArrayViewProtoFuncSubarray):
      (JSC::::JSGenericTypedArrayViewPrototype):
      (JSC::::finishCreation):
      (JSC::::create):
      (JSC::::createStructure):
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::reset):
      (JSC::JSGlobalObject::visitChildren):
      * runtime/JSGlobalObject.h:
      (JSC::JSGlobalObject::arrayBufferPrototype):
      (JSC::JSGlobalObject::arrayBufferStructure):
      (JSC::JSGlobalObject::typedArrayStructure):
      * runtime/JSInt16Array.h: Added.
      * runtime/JSInt32Array.h: Added.
      * runtime/JSInt8Array.h: Added.
      * runtime/JSTypedArrayConstructors.cpp: Added.
      * runtime/JSTypedArrayConstructors.h: Added.
      * runtime/JSTypedArrayPrototypes.cpp: Added.
      * runtime/JSTypedArrayPrototypes.h: Added.
      * runtime/JSTypedArrays.cpp: Added.
      * runtime/JSTypedArrays.h: Added.
      * runtime/JSUint16Array.h: Added.
      * runtime/JSUint32Array.h: Added.
      * runtime/JSUint8Array.h: Added.
      * runtime/JSUint8ClampedArray.h: Added.
      * runtime/Operations.h:
      * runtime/Options.h:
      * runtime/SimpleTypedArrayController.cpp: Added.
      (JSC::SimpleTypedArrayController::SimpleTypedArrayController):
      (JSC::SimpleTypedArrayController::~SimpleTypedArrayController):
      (JSC::SimpleTypedArrayController::toJS):
      * runtime/SimpleTypedArrayController.h: Added.
      * runtime/Structure.h:
      (JSC::Structure::couldHaveIndexingHeader):
      * runtime/StructureInlines.h:
      (JSC::Structure::hasIndexingHeader):
      * runtime/TypedArrayAdaptors.h: Added.
      (JSC::IntegralTypedArrayAdaptor::toNative):
      (JSC::IntegralTypedArrayAdaptor::toJSValue):
      (JSC::IntegralTypedArrayAdaptor::toDouble):
      (JSC::FloatTypedArrayAdaptor::toNative):
      (JSC::FloatTypedArrayAdaptor::toJSValue):
      (JSC::FloatTypedArrayAdaptor::toDouble):
      (JSC::Uint8ClampedAdaptor::toNative):
      (JSC::Uint8ClampedAdaptor::toJSValue):
      (JSC::Uint8ClampedAdaptor::toDouble):
      (JSC::Uint8ClampedAdaptor::clamp):
      * runtime/TypedArrayController.cpp: Added.
      (JSC::TypedArrayController::TypedArrayController):
      (JSC::TypedArrayController::~TypedArrayController):
      * runtime/TypedArrayController.h: Added.
      * runtime/TypedArrayDescriptor.h: Removed.
      * runtime/TypedArrayInlines.h: Added.
      * runtime/TypedArrayType.cpp: Added.
      (JSC::classInfoForType):
      (WTF::printInternal):
      * runtime/TypedArrayType.h: Added.
      (JSC::toIndex):
      (JSC::isTypedView):
      (JSC::elementSize):
      (JSC::isInt):
      (JSC::isFloat):
      (JSC::isSigned):
      (JSC::isClamped):
      * runtime/TypedArrays.h: Added.
      * runtime/Uint16Array.h:
      * runtime/Uint32Array.h:
      * runtime/Uint8Array.h:
      * runtime/Uint8ClampedArray.h:
      * runtime/VM.cpp:
      (JSC::VM::VM):
      (JSC::VM::~VM):
      * runtime/VM.h:
      
      Source/WebCore: 
      
      Reviewed by Oliver Hunt.
      
      Typed arrays are now implemented in JavaScriptCore, and WebCore is merely a
      client of them. There is only one layering violation: WebCore installs a
      WebCoreTypedArrayController on VM, which makes the
      ArrayBuffer<->JSArrayBuffer relationship resemble DOM wrappers. By default,
      JSC makes the ownership go one way; the JSArrayBuffer keeps the ArrayBuffer
      alive but if ArrayBuffer is kept alive from native code then the
      JSArrayByffer may die. WebCoreTypedArrayController will keep the
      JSArrayBuffer alive if the ArrayBuffer is in the opaque root set.
              
      To make non-JSDOMWrappers behave like DOM wrappers, a bunch of code is
      changed to make most references to wrappers refer to JSObject* rather than
      JSDOMWrapper*.
              
      Array buffer views are now transient; the JS array buffer view wrappers
      don't own them or keep them alive. This required a bunch of changes to make
      bindings code use RefPtr<ArrayBufferView> to hold onto their views.
              
      Also there is a bunch of new code to make JSC-provided array buffers and
      views obey the toJS/to<ClassName> idiom for wrapping and unwrapping.
              
      Finally, the DataView API is now completely different: the JSDataView
      provides the same user-visible JS API but using its own internal magic; the
      C++ code that uses DataView now uses a rather different API that is not
      aware of usual DOM semantics, since it's in JSC and not WebCore. It's
      equally useful for all of WebCore's purposes, but some code had to change
      to adapt the new conventions.
              
      Some tests have been changed or rebased due to changes in behavior, that
      bring us into conformance with where the standards are going and allow us to
      match Firefox behavior.
      
      Automake work and some additional GTK changes courtesy of
      Zan Dobersek <zdobersek@igalia.com>.
              
      Additional Qt changes courtesy of Arunprasad Rajkumar <arurajku@cisco.com>.
      
      * CMakeLists.txt:
      * DerivedSources.make:
      * ForwardingHeaders/runtime/DataView.h: Added.
      * ForwardingHeaders/runtime/JSArrayBuffer.h: Added.
      * ForwardingHeaders/runtime/JSArrayBufferView.h: Added.
      * ForwardingHeaders/runtime/JSDataView.h: Added.
      * ForwardingHeaders/runtime/JSTypedArrays.h: Added.
      * ForwardingHeaders/runtime/TypedArrayController.h: Added.
      * ForwardingHeaders/runtime/TypedArrayInlines.h: Added.
      * ForwardingHeaders/runtime/TypedArrays.h: Added.
      * GNUmakefile.list.am:
      * Modules/webaudio/RealtimeAnalyser.h:
      * Target.pri:
      * UseJSC.cmake:
      * WebCore.exp.in:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/DOMWrapperWorld.h:
      * bindings/js/JSArrayBufferCustom.cpp: Removed.
      * bindings/js/JSArrayBufferViewHelper.h: Removed.
      * bindings/js/JSAudioContextCustom.cpp:
      * bindings/js/JSBindingsAllInOne.cpp:
      * bindings/js/JSBlobCustom.cpp:
      * bindings/js/JSCSSRuleCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSCSSValueCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSCryptoCustom.cpp:
      (WebCore::JSCrypto::getRandomValues):
      * bindings/js/JSDOMBinding.h:
      (WebCore::wrapperOwner):
      (WebCore::wrapperContext):
      (WebCore::getInlineCachedWrapper):
      (WebCore::setInlineCachedWrapper):
      (WebCore::clearInlineCachedWrapper):
      (WebCore::getCachedWrapper):
      (WebCore::cacheWrapper):
      (WebCore::uncacheWrapper):
      (WebCore::wrap):
      (WebCore::toJS):
      (WebCore::toArrayBufferView):
      (WebCore::toInt8Array):
      (WebCore::toInt16Array):
      (WebCore::toInt32Array):
      (WebCore::toUint8Array):
      (WebCore::toUint8ClampedArray):
      (WebCore::toUint16Array):
      (WebCore::toUint32Array):
      (WebCore::toFloat32Array):
      (WebCore::toFloat64Array):
      (WebCore::toDataView):
      * bindings/js/JSDataViewCustom.cpp: Removed.
      * bindings/js/JSDictionary.cpp:
      * bindings/js/JSDictionary.h:
      * bindings/js/JSDocumentCustom.cpp:
      (WebCore::JSDocument::location):
      (WebCore::toJS):
      * bindings/js/JSEventCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSFileReaderCustom.cpp:
      * bindings/js/JSHTMLCollectionCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSHTMLTemplateElementCustom.cpp:
      (WebCore::JSHTMLTemplateElement::content):
      * bindings/js/JSImageDataCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      * bindings/js/JSMessageEventCustom.cpp:
      * bindings/js/JSMessagePortCustom.cpp:
      * bindings/js/JSSVGPathSegCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSStyleSheetCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSTrackCustom.cpp:
      (WebCore::toJS):
      * bindings/js/JSWebGLRenderingContextCustom.cpp:
      * bindings/js/JSXMLHttpRequestCustom.cpp:
      (WebCore::JSXMLHttpRequest::send):
      * bindings/js/SerializedScriptValue.cpp:
      (WebCore::SerializedScriptValue::transferArrayBuffers):
      * bindings/js/WebCoreJSClientData.h:
      (WebCore::initNormalWorldClientData):
      * bindings/js/WebCoreTypedArrayController.cpp: Added.
      (WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController):
      (WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController):
      (WebCore::WebCoreTypedArrayController::toJS):
      (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots):
      (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):
      * bindings/js/WebCoreTypedArrayController.h: Added.
      (WebCore::WebCoreTypedArrayController::wrapperOwner):
      * bindings/scripts/CodeGenerator.pm:
      (ForAllParents):
      (ParseInterface):
      (SkipIncludeHeader):
      (IsTypedArrayType):
      (IsWrapperType):
      * bindings/scripts/CodeGeneratorJS.pm:
      (AddIncludesForType):
      (GenerateHeader):
      (GenerateImplementation):
      (GenerateParametersCheck):
      (GetNativeType):
      (JSValueToNative):
      (NativeToJSValue):
      (GenerateConstructorDefinition):
      (GenerateConstructorHelperMethods):
      * fileapi/WebKitBlobBuilder.cpp:
      (WebCore::BlobBuilder::append):
      * fileapi/WebKitBlobBuilder.h:
      * html/canvas/ArrayBuffer.idl: Removed.
      * html/canvas/ArrayBufferView.idl: Removed.
      * html/canvas/DataView.cpp: Removed.
      * html/canvas/DataView.h: Removed.
      * html/canvas/DataView.idl: Removed.
      * html/canvas/Float32Array.idl: Removed.
      * html/canvas/Float64Array.idl: Removed.
      * html/canvas/Int16Array.idl: Removed.
      * html/canvas/Int32Array.idl: Removed.
      * html/canvas/Int8Array.idl: Removed.
      * html/canvas/Uint16Array.idl: Removed.
      * html/canvas/Uint32Array.idl: Removed.
      * html/canvas/Uint8Array.idl: Removed.
      * html/canvas/Uint8ClampedArray.idl: Removed.
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::readPixels):
      (WebCore::WebGLRenderingContext::validateTexFuncData):
      * page/Crypto.cpp:
      * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
      (WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource):
      (WebCore::MediaPlayerPrivateAVFoundationObjC::extractKeyURIKeyIDAndCertificateFromInitData):
      * platform/graphics/filters/FECustomFilter.h:
      * platform/graphics/filters/FEGaussianBlur.cpp:
      * platform/graphics/filters/FilterEffect.cpp:
      * testing/MockCDM.cpp:
      
      Source/WebKit2: 
      
      Reviewed by Oliver Hunt.
              
      You don't need to include JSUint8Array anymore if you just want to
      unwrap one; JSDOMBinding gives you all of the things you need.
      
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      
      Source/WTF: 
      
      Reviewed by Oliver Hunt.
              
      - Added the notion of a reference counted object that can be marked Deferred,
        which is like a special-purpose upref.
              
      - Added a common byte flipper.
      
      Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>.
      
      * GNUmakefile.list.am:
      * WTF.xcodeproj/project.pbxproj:
      * wtf/DeferrableRefCounted.h: Added.
      (WTF::DeferrableRefCountedBase::ref):
      (WTF::DeferrableRefCountedBase::hasOneRef):
      (WTF::DeferrableRefCountedBase::refCount):
      (WTF::DeferrableRefCountedBase::isDeferred):
      (WTF::DeferrableRefCountedBase::DeferrableRefCountedBase):
      (WTF::DeferrableRefCountedBase::~DeferrableRefCountedBase):
      (WTF::DeferrableRefCountedBase::derefBase):
      (WTF::DeferrableRefCountedBase::setIsDeferredBase):
      (WTF::DeferrableRefCounted::deref):
      (WTF::DeferrableRefCounted::setIsDeferred):
      (WTF::DeferrableRefCounted::DeferrableRefCounted):
      (WTF::DeferrableRefCounted::~DeferrableRefCounted):
      * wtf/FlipBytes.h: Added.
      (WTF::needToFlipBytesIfLittleEndian):
      (WTF::flipBytes):
      (WTF::flipBytesIfLittleEndian):
      
      LayoutTests: 
      
      Reviewed by Oliver Hunt.
      
      * fast/canvas/webgl/array-set-invalid-arguments-expected.txt:
      * fast/canvas/webgl/array-set-out-of-bounds-expected.txt:
      * fast/canvas/webgl/array-unit-tests-expected.txt:
      * fast/canvas/webgl/array-unit-tests.html:
      * fast/canvas/webgl/data-view-crash-expected.txt:
      * fast/canvas/webgl/script-tests/arraybuffer-transfer-of-control.js:
      (checkView):
      * fast/dom/call-a-constructor-as-a-function-expected.txt:
      * fast/dom/call-a-constructor-as-a-function.html:
      * fast/js/constructor-length.html:
      * fast/js/global-constructors-attributes-dedicated-worker-expected.txt:
      * fast/js/global-constructors-attributes-expected.txt:
      * fast/js/global-constructors-attributes-shared-worker-expected.txt:
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-expected.txt: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-expected.txt: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived.html: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer-expected.txt: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer.html: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-expected.txt: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived.html: Added.
      * fast/js/regress/ArrayBuffer-Int8Array-alloc.html: Added.
      * fast/js/regress/Int32Array-Int8Array-view-alloc-expected.txt: Added.
      * fast/js/regress/Int32Array-Int8Array-view-alloc.html: Added.
      * fast/js/regress/Int32Array-alloc-expected.txt: Added.
      * fast/js/regress/Int32Array-alloc-huge-expected.txt: Added.
      * fast/js/regress/Int32Array-alloc-huge-long-lived-expected.txt: Added.
      * fast/js/regress/Int32Array-alloc-huge-long-lived.html: Added.
      * fast/js/regress/Int32Array-alloc-huge.html: Added.
      * fast/js/regress/Int32Array-alloc-large-expected.txt: Added.
      * fast/js/regress/Int32Array-alloc-large-long-lived-expected.txt: Added.
      * fast/js/regress/Int32Array-alloc-large-long-lived.html: Added.
      * fast/js/regress/Int32Array-alloc-large.html: Added.
      * fast/js/regress/Int32Array-alloc-long-lived-expected.txt: Added.
      * fast/js/regress/Int32Array-alloc-long-lived.html: Added.
      * fast/js/regress/Int32Array-alloc.html: Added.
      * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Added.
      * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived.js: Added.
      * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived-buffer.js: Added.
      * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived.js: Added.
      * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc.js: Added.
      * fast/js/regress/script-tests/Int32Array-Int8Array-view-alloc.js: Added.
      * fast/js/regress/script-tests/Int32Array-alloc-huge-long-lived.js: Added.
      * fast/js/regress/script-tests/Int32Array-alloc-huge.js: Added.
      * fast/js/regress/script-tests/Int32Array-alloc-large-long-lived.js: Added.
      * fast/js/regress/script-tests/Int32Array-alloc-large.js: Added.
      * fast/js/regress/script-tests/Int32Array-alloc-long-lived.js: Added.
      * fast/js/regress/script-tests/Int32Array-alloc.js: Added.
      * platform/mac/fast/js/constructor-length-expected.txt:
      * webgl/resources/webgl_test_files/conformance/typedarrays/array-unit-tests.html:
      * webgl/resources/webgl_test_files/conformance/typedarrays/data-view-test.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154127 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0e0d9312
    • bjonesbe@adobe.com's avatar
      <https://webkit.org/b/119850> Speed up test importing by doing all the regex... · 1a8ab279
      bjonesbe@adobe.com authored
      <https://webkit.org/b/119850> Speed up test importing by doing all the regex matching in a single pass
      
      Reviewed by Dirk Pranke.
      
      This is a port from Blink of
      https://src.chromium.org/viewvc/blink?revision=155647&view=revision
      originally by Dirk Pranke.
      
      From the original commit:
      
      This gives something like a 15x speedup over compiling and matching
      one property at a time and doing multiple passes over the file.
      
      * Scripts/webkitpy/w3c/test_converter.py:
      (W3CTestConverter.__init__):
      (W3CTestConverter.convert_prefixed_properties):
      (W3CTestConverter.add_webkit_prefix_to_unprefixed_properties):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154126 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1a8ab279
    • cfleizach@apple.com's avatar
      <https://webkit.org/b/119824> AX: WKView does not become first responder when... · 7f8f5d98
      cfleizach@apple.com authored
      <https://webkit.org/b/119824> AX: WKView does not become first responder when the voiceover cursor lands on it
      
      Reviewed by Darin Adler.
      
      Incorporate review feedback from Darin.
      
      * accessibility/AccessibilityScrollView.cpp:
      (WebCore::AccessibilityScrollView::canSetFocusAttribute):
      (WebCore::AccessibilityScrollView::isFocused):
      * accessibility/AccessibilityScrollView.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154123 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f8f5d98
    • akling@apple.com's avatar
      <https://webkit.org/b/119826> Page::focusController() should return a reference. · 8825ce75
      akling@apple.com authored
      Reviewed by Anders Carlsson.
      
      Page::focusController() is never null so make it return a reference.
      Some unnecessary checks were removed as a result.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154122 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8825ce75
    • rwlbuis@webkit.org's avatar
      ASSERTION FAILED: !m_adoptionIsRequired in void WebCore::TreeShared<NodeType>::ref() · 905f4c2d
      rwlbuis@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=116979
      
      Reviewed by Alexey Proskuryakov.
      
      Make constructors private since only ::create should use them.
      
      * html/shadow/MeterShadowElement.h:
      * html/shadow/ProgressShadowElement.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154121 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      905f4c2d
    • oliver@apple.com's avatar
      <https://webkit.org/b/119830> Assigning to a readonly global results in DFG byte code parse failure · 0053edb3
      oliver@apple.com authored
      Reviewed by Filip Pizlo.
      
      Source/JavaScriptCore:
      
      Make sure dfgCapabilities doesn't report a Dynamic put as
      being compilable when we don't actually support it.
      
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::dumpBytecode):
      * dfg/DFGCapabilities.cpp:
      (JSC::DFG::capabilityLevel):
      
      LayoutTests:
      
      Add a test
      
      * fast/js/dfg-put-to-readonly-property-expected.txt: Added.
      * fast/js/dfg-put-to-readonly-property.html: Added.
      * fast/js/script-tests/dfg-put-to-readonly-property.js: Added.
      (foo):
      (bar):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154120 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0053edb3
    • bfulgham@apple.com's avatar
      [Windows] Incorrect DLL Linkage for JSC ArrayBuffer and ArrayBufferView · e25646c2
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119847
      
      Reviewed by Oliver Hunt.
      
      * runtime/ArrayBuffer.h: Switch from WTF_EXPORT_PRIVATE to JS_EXPORT_PRIVATE
      * runtime/ArrayBufferView.h: Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e25646c2