1. 12 Nov, 2013 28 commits
  2. 11 Nov, 2013 12 commits
    • ossy@webkit.org's avatar
      Unreviewed, rolling out r159088. · edbbfcd9
      ossy@webkit.org authored
      http://trac.webkit.org/changeset/159088
      https://bugs.webkit.org/show_bug.cgi?id=124187
      
      It broke the EFL build, because it removed a used function
      (rs=thorton) (Requested by Ossy_night on #webkit).
      
      Patch by Commit Queue <commit-queue@webkit.org> on 2013-11-11
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::WebPageProxy):
      (WebKit::WebPageProxy::resetStateAfterProcessExited):
      * UIProcess/WebPageProxy.h:
      (WebKit::WebPageProxy::urlAtProcessExit):
      (WebKit::WebPageProxy::loadStateAtProcessExit):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159096 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      edbbfcd9
    • beidson@apple.com's avatar
      Make IDBTransaction tasks asynchronous · f596c75a
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124183
      
      Reviewed by Tim Horton.
      
      This is an almost zero-change in behavior.
      
      The one thing that is different is that previously, IDBTransactionBackends would synchronously
      run through their entire set of IDBOperation’s without ever returning control to the runloop.
      
      Now, they start one task and then wait for its completion to schedule the start of the next task.
      
      Change IDBOperation’s perform() to take a completion handler so it can be asynchronous.
      Add an IDBSynchronousOperation class to handle "Abort" tasks, which never need to perform i/o
      and therefore can be entirely synchronous.
      * Modules/indexeddb/IDBOperation.h:
      (WebCore::IDBSynchronousOperation::~IDBSynchronousOperation):
      
      * Modules/indexeddb/IDBTransactionBackend.cpp:
      (WebCore::IDBTransactionBackend::scheduleTask): "Abort tasks" are now IDBSynchronousOperations.
      (WebCore::IDBTransactionBackend::abort):
      (WebCore::IDBTransactionBackend::taskTimerFired): Instead of running through the entire set of tasks,
        perform a single task asynchronously. The completion handler for the task will reset the task timer
        to asynchronously start the next task.
      * Modules/indexeddb/IDBTransactionBackend.h:
      (WebCore::IDBTransactionBackend::scheduleTask): "Abort tasks" are now IDBSynchronousOperations.
      
      Update all operations to take completion handlers.
      For now, perform things synchronously like before, calling the completion handler when complete.
      * Modules/indexeddb/IDBCursorBackend.cpp:
      (WebCore::CallOnDestruct::CallOnDestruct): Helper class to make sure completion callbacks are always called perform() exits.
      (WebCore::CallOnDestruct::~CallOnDestruct):
      (WebCore::IDBCursorBackend::CursorIterationOperation::create):
      (WebCore::IDBCursorBackend::CursorAdvanceOperation::create):
      (WebCore::IDBCursorBackend::CursorPrefetchIterationOperation::create):
      (WebCore::IDBCursorBackend::CursorAdvanceOperation::perform):
      (WebCore::IDBCursorBackend::CursorIterationOperation::perform):
      (WebCore::IDBCursorBackend::CursorPrefetchIterationOperation::perform):
      
      * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
      (WebCore::CallOnDestruct::CallOnDestruct): Helper class to make sure completion callbacks are always called when perform() exits.
      (WebCore::CallOnDestruct::~CallOnDestruct):
      (WebCore::CreateObjectStoreOperation::perform):
      (WebCore::CreateIndexOperation::perform):
      (WebCore::DeleteIndexOperation::perform):
      (WebCore::GetOperation::perform):
      (WebCore::PutOperation::perform):
      (WebCore::SetIndexesReadyOperation::perform):
      (WebCore::OpenCursorOperation::perform):
      (WebCore::CountOperation::perform):
      (WebCore::DeleteRangeOperation::perform):
      (WebCore::ClearOperation::perform):
      (WebCore::DeleteObjectStoreOperation::perform):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::perform):
      
      * Modules/indexeddb/IDBTransactionBackendOperations.h:
      (WebCore::CreateObjectStoreOperation::create):
      (WebCore::DeleteObjectStoreOperation::create):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::create):
      (WebCore::CreateObjectStoreAbortOperation::create):
      (WebCore::DeleteObjectStoreAbortOperation::create):
      (WebCore::IDBDatabaseBackend::VersionChangeAbortOperation::create):
      (WebCore::CreateIndexOperation::create):
      (WebCore::CreateIndexAbortOperation::create):
      (WebCore::DeleteIndexOperation::create):
      (WebCore::DeleteIndexAbortOperation::create):
      (WebCore::GetOperation::create):
      (WebCore::PutOperation::create):
      (WebCore::SetIndexesReadyOperation::create):
      (WebCore::OpenCursorOperation::create):
      (WebCore::CountOperation::create):
      (WebCore::DeleteRangeOperation::create):
      (WebCore::ClearOperation::create):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f596c75a
    • ossy@webkit.org's avatar
      URTBF after r159077 to make GTK build happy. · 0def2e0d
      ossy@webkit.org authored
      * GNUmakefile.list.am:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0def2e0d
    • commit-queue@webkit.org's avatar
      Web Inspector: Remove some unused generated code · 22b31891
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124179
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-11-11
      Reviewed by Timothy Hatcher.
      
      * inspector/CodeGeneratorInspectorStrings.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159093 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      22b31891
    • gyuyoung.kim@samsung.com's avatar
      Clean up static_cast<Element*> usage · a4e7a7b1
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124133
      
      Reviewed by Andreas Kling.
      
      We need to use toFoo cast function instead of static_cast<>. Though there is toElement(),
      static_cast<Element*> is still being used.
      
      No new tests, no behavior changes.
      
      * bindings/gobject/WebKitDOMPrivate.cpp:
      (WebKit::wrap):
      * dom/ElementTraversal.h:
      (WebCore::::lastWithinTemplate):
      (WebCore::::nextTemplate):
      (WebCore::::previousTemplate):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159092 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a4e7a7b1
    • fpizlo@apple.com's avatar
      Get rid of the lastResultRegister optimization in the baseline JIT · 9a5ab80f
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124171
      
      Rubber stamped by Mark Hahnenberg.
              
      The baseline JIT no longer needs amazing throughput. And this optimization has caused
      way too many OSR exit bugs. And it constrains how much we can do in the DFG/FTL. So,
      I'm getting rid of it.
      
      * dfg/DFGOSRExit.cpp:
      (JSC::DFG::OSRExit::OSRExit):
      (JSC::DFG::OSRExit::convertToForward):
      * dfg/DFGOSRExit.h:
      * dfg/DFGOSRExitCompiler32_64.cpp:
      (JSC::DFG::OSRExitCompiler::compileExit):
      * dfg/DFGOSRExitCompiler64.cpp:
      (JSC::DFG::OSRExitCompiler::compileExit):
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::SpeculativeJIT):
      (JSC::DFG::SpeculativeJIT::compileMovHint):
      (JSC::DFG::SpeculativeJIT::compileCurrentBlock):
      * dfg/DFGSpeculativeJIT.h:
      * ftl/FTLLowerDFGToLLVM.cpp:
      (JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
      (JSC::FTL::LowerDFGToLLVM::compileZombieHint):
      (JSC::FTL::LowerDFGToLLVM::compileInvalidationPoint):
      (JSC::FTL::LowerDFGToLLVM::appendOSRExit):
      (JSC::FTL::LowerDFGToLLVM::observeMovHint):
      * ftl/FTLOSRExit.cpp:
      (JSC::FTL::OSRExit::OSRExit):
      (JSC::FTL::OSRExit::convertToForward):
      * ftl/FTLOSRExit.h:
      * ftl/FTLOSRExitCompiler.cpp:
      (JSC::FTL::compileStub):
      * jit/JIT.cpp:
      (JSC::JIT::JIT):
      (JSC::JIT::privateCompileMainPass):
      (JSC::JIT::privateCompileSlowCases):
      * jit/JIT.h:
      (JSC::JIT::appendCall):
      * jit/JITArithmetic32_64.cpp:
      (JSC::JIT::emit_op_lshift):
      (JSC::JIT::emitRightShift):
      (JSC::JIT::emit_op_bitand):
      (JSC::JIT::emit_op_bitor):
      (JSC::JIT::emit_op_bitxor):
      (JSC::JIT::emit_op_inc):
      (JSC::JIT::emit_op_dec):
      * jit/JITCall.cpp:
      (JSC::JIT::emitPutCallResult):
      (JSC::JIT::compileLoadVarargs):
      * jit/JITInlines.h:
      (JSC::JIT::emitGetFromCallFrameHeaderPtr):
      (JSC::JIT::emitGetFromCallFrameHeader32):
      (JSC::JIT::emitGetFromCallFrameHeader64):
      (JSC::JIT::emitLoadTag):
      (JSC::JIT::emitLoadPayload):
      (JSC::JIT::emitLoad2):
      (JSC::JIT::emitGetVirtualRegister):
      (JSC::JIT::emitGetVirtualRegisters):
      (JSC::JIT::emitPutVirtualRegister):
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_mov):
      (JSC::JIT::emit_op_catch):
      (JSC::JIT::emit_op_new_func):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_mov):
      (JSC::JIT::emit_op_to_primitive):
      (JSC::JIT::emit_op_to_number):
      (JSC::JIT::emit_op_catch):
      * jit/JITPropertyAccess.cpp:
      (JSC::JIT::emit_op_resolve_scope):
      (JSC::JIT::emit_op_get_from_scope):
      (JSC::JIT::emit_op_put_to_scope):
      * jit/JITPropertyAccess32_64.cpp:
      (JSC::JIT::emit_op_get_by_val):
      (JSC::JIT::emit_op_get_by_id):
      (JSC::JIT::emit_op_get_by_pname):
      (JSC::JIT::emitResolveClosure):
      (JSC::JIT::emit_op_resolve_scope):
      (JSC::JIT::emit_op_get_from_scope):
      (JSC::JIT::emit_op_init_global_const):
      * jit/SlowPathCall.h:
      (JSC::JITSlowPathCall::call):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159091 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9a5ab80f
    • gns@gnome.org's avatar
      REGRESSION(r158976): Web Inspector: unable to start docked or dock · 889fdd3a
      gns@gnome.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124148
      
      Reviewed by Timothy Hatcher.
      
      * UIProcess/WebInspectorProxy.cpp:
      (WebKit::WebInspectorProxy::canAttach): check for a level that is greater than 1 rather than 0
      to deny attachment, since 1 is the first level of inspectors.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159090 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      889fdd3a
    • andersca@apple.com's avatar
      FrameFilter can just be an std::function instead · 54b12055
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124176
      
      Reviewed by Tim Horton.
      
      Source/WebCore:
      
      * WebCore.exp.in:
      * loader/archive/cf/LegacyWebArchive.cpp:
      (WebCore::LegacyWebArchive::create):
      * loader/archive/cf/LegacyWebArchive.h:
      
      Source/WebKit/mac:
      
      * DOM/WebDOMOperations.mm:
      (-[DOMNode webArchiveByFilteringSubframes:]):
      
      Source/WebKit2:
      
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::webArchiveData):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      54b12055
    • andersca@apple.com's avatar
      Remove unused Qt cruft · 6f9ac118
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124174
      
      Reviewed by Tim Horton.
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::WebPageProxy):
      (WebKit::WebPageProxy::resetStateAfterProcessExited):
      * UIProcess/WebPageProxy.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159088 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6f9ac118
    • andersca@apple.com's avatar
      REGRESSION (r158927): curly-braces-escaping.html is broken on Mac WebKit2 · d34c02cc
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124164
      
      Reviewed by Alexey Proskuryakov.
      
      Back out the change to use NSSecureCoding for encoding/decoding NSURLRequest and
      NSURLResponse objects; turns out the NSURL encoding/decoding doesn't preserve the raw URL bytes.
      
      * Shared/mac/WebCoreArgumentCodersMac.mm:
      (CoreIPC::encodePlatformData):
      (CoreIPC::decodePlatformData):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159084 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d34c02cc
    • ryuan.choi@samsung.com's avatar
      Unreviewed build fix on CMake Based port since r159077. · 2dfecd17
      ryuan.choi@samsung.com authored
      * CMakeLists.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159083 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2dfecd17
    • simon.fraser@apple.com's avatar
      REGRESSION (r155660): box-shadow causes overlay scrollbars to be in the wrong... · 1c06cdda
      simon.fraser@apple.com authored
      REGRESSION (r155660): box-shadow causes overlay scrollbars to be in the wrong position when element is composited (85647)
      https://bugs.webkit.org/show_bug.cgi?id=124090
      
      Source/WebCore:
      
      Reviewed by Beth Dakin.
      
      After r155660 we did fewer layouts, so were left with overlay scrollbars in the
      wrong locations because nothing would update them after RenderLayerBacking
      computed a new offsetFromRenderer.
      
      First part of the fix is to wean positionOverflowControlsLayers() off of
      an absolute offset from the root. Do this by not using Widget::frameRect()
      to position the layers, but instead RenderLayer::rectFor{Horizontal|Vertical}Scrollbar
      which is what we used to position the scrollbars in the first place.
      
      Second part of the fix is to call positionOverflowControlsLayers() from
      RenderLayerBacking::updateGraphicsLayerGeometry() if the offsetFromRenderer
      changed.
      
      Test: compositing/overflow/overflow-scrollbar-layer-positions.html
      
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::positionOverflowControls):
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
      (WebCore::RenderLayerBacking::positionOverflowControlsLayers):
      * rendering/RenderLayerBacking.h:
      
      LayoutTests:
      
      Reviewed by Beth Dakin.
      
      Test, but it doesn't actually test the fix until we enable overlay scrollbars
      in tests (bug 60716).
      
      * compositing/overflow/overflow-scrollbar-layer-positions-expected.txt: Added.
      * compositing/overflow/overflow-scrollbar-layer-positions.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c06cdda