1. 12 Nov, 2013 15 commits
    • ossy@webkit.org's avatar
      URTBF after r159108. · de95dc1f
      ossy@webkit.org authored
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159111 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      de95dc1f
    • achicu@adobe.com's avatar
      Web Inspector: Crash when closing the Inspector while debugging an exception... · ff170404
      achicu@adobe.com authored
      Web Inspector: Crash when closing the Inspector while debugging an exception inside a breakpoint condition.
      https://bugs.webkit.org/show_bug.cgi?id=124078
      
      Reviewed by Joseph Pecoraro.
      
      Source/JavaScriptCore:
      
      The crash would happen because the Debugger is not designed to support nested
      breaks. For example, when the debugger handles a breakpoint and the Inspector
      executes a console command that would hit the breakpoint again, the Debugger
      will just ignore the breakpoint.
      
      There were no checks for conditions and actions. Because of that conditions and actions
      could trigger exceptions and breakpoints. This patch disables that functionality as it
      cannot be supported without a bigger rewrite of the code.
      
      * debugger/Debugger.cpp:
      (JSC::TemporaryPausedState::TemporaryPausedState):
      (JSC::TemporaryPausedState::~TemporaryPausedState):
      (JSC::Debugger::hasBreakpoint):
      (JSC::Debugger::pauseIfNeeded):
      * debugger/Debugger.h:
      
      LayoutTests:
      
      Checking that the debugger will not crash nor stall when exceptions are throw while the debugger
      is already paused. The cases when that can happen include breakpoint conditions, actions, eval
      or runtime object inspection.
      
      The current behavior was to ignore the exceptions or breakpoints while executing "console commands"
      when the debugger was already paused. I'm extending this mechanism to breakpoint conditions and
      actions as the Debugger is not designed to support nested "debugger breaks".
      
      * http/tests/inspector-protocol/resources/protocol-test.js:
      (closeTest): Avoid having internals.closeDummyInspectorFrontend and testRunner.notifyDone
      in the same function. The debugger will not have a chance to exit the temporary EventLoop
      before loading the next test.
      * inspector-protocol/debugger/breakpoint-action-detach-expected.txt: Added.
      * inspector-protocol/debugger/breakpoint-action-detach.html: Added.
      * inspector-protocol/debugger/breakpoint-action-with-exception-expected.txt: Added.
      * inspector-protocol/debugger/breakpoint-action-with-exception.html: Added.
      * inspector-protocol/debugger/breakpoint-condition-detach-expected.txt: Added.
      * inspector-protocol/debugger/breakpoint-condition-detach.html: Added.
      * inspector-protocol/debugger/breakpoint-condition-with-exception-expected.txt: Added.
      * inspector-protocol/debugger/breakpoint-condition-with-exception.html: Added.
      * inspector-protocol/debugger/breakpoint-eval-with-exception-expected.txt: Added.
      * inspector-protocol/debugger/breakpoint-eval-with-exception.html: Added.
      * inspector-protocol/debugger/breakpoint-inside-conditons-and-actions-expected.txt: Added.
      * inspector-protocol/debugger/breakpoint-inside-conditons-and-actions.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159110 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff170404
    • commit-queue@webkit.org's avatar
      [GTK] Update GTK builders in Tools/Scripts/webkitpy/port/builders.py · 7b949ac2
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124144
      
      Patch by Denis Nomiyama <d.nomiyama@samsung.com> on 2013-11-12
      Reviewed by Gustavo Noronha Silva.
      
      Updated the list of GTK builders in Tools/Scripts/webkitpy/port/builders.py
      according to http://build.webkit.org/builders.
      
      * Scripts/webkitpy/port/builders.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159109 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7b949ac2
    • andersca@apple.com's avatar
      Move StringReference to Platform/IPC · 96fe6840
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124203
      
      Reviewed by Antti Koivisto.
      
      * Platform/IPC/StringReference.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/StringReference.cpp.
      (CoreIPC::StringReference::toString):
      (CoreIPC::StringReference::encode):
      (CoreIPC::StringReference::decode):
      (CoreIPC::StringReference::Hash::hash):
      * Platform/IPC/StringReference.h: Renamed from Source/WebKit2/Platform/CoreIPC/StringReference.h.
      (CoreIPC::StringReference::StringReference):
      (CoreIPC::StringReference::isEmpty):
      (CoreIPC::StringReference::size):
      (CoreIPC::StringReference::data):
      (CoreIPC::StringReference::operator==):
      (CoreIPC::StringReference::Hash::equal):
      * WebKit2.xcodeproj/project.pbxproj:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159108 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      96fe6840
    • mario@webkit.org's avatar
      Unreviewed GTK gardening. Share expectations for vertical text among WK1 and WK2. · 27c6d69d
      mario@webkit.org authored
      * platform/gtk-wk2/fast/repaint/japanese-rl-selection-clear-expected.txt: Removed.
      * platform/gtk-wk2/fast/repaint/japanese-rl-selection-repaint-expected.txt: Removed.
      * platform/gtk-wk2/fast/repaint/repaint-across-writing-mode-boundary-expected.txt: Removed.
      * platform/gtk-wk2/fast/text/international/vertical-text-glyph-test-expected.txt: Removed.
      * platform/gtk-wk2/fast/text/justify-ideograph-vertical-expected.txt: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159107 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      27c6d69d
    • m.pakula@samsung.com's avatar
      Unreviewed EFL gardening · 1dcb0819
      m.pakula@samsung.com authored
      Mark 73 tests as failing/skipped after r158954.
      
      * platform/efl/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159106 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1dcb0819
    • antti@apple.com's avatar
      Text on simple lines sometimes paints one pixel off · cbdae682
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124200
      
      Reviewed by Andreas Kling.
      
      Source/WebCore: 
      
      Test: fast/text/line-runs-simple-lines.html
      
      * rendering/SimpleLineLayout.cpp:
      (WebCore::SimpleLineLayout::adjustRunOffsets):
              
          Don't round on run construction time.
      
      (WebCore::SimpleLineLayout::createTextRuns):
      * rendering/SimpleLineLayoutResolver.h:
      (WebCore::SimpleLineLayout::RunResolver::Run::rect):
              
          Instead round when generating rects.
      
      (WebCore::SimpleLineLayout::RunResolver::Run::baseline):
              
          Provide the baseline (used by painting) as unrounded FloatPoint.
      
      LayoutTests: 
      
      * fast/text/line-runs-rounding-simple-lines-expected.html: Added.
      * fast/text/line-runs-rounding-simple-lines.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cbdae682
    • akling@apple.com's avatar
      Elements with class names automatically get unique ElementData. · e5720746
      akling@apple.com authored
      <https://webkit.org/b/124184>
      
      We were calling Element::ensureUniqueElementData() for all Elements
      with a non-empty list of class names. Doing that on parser-fresh
      Elements caused us to upgrade them to UniqueElementData despite not
      needing it (ElementData::setClass() is a const function for caching
      the "cooked" class and can be called on ShareableElementData.)
      
      1.09 MB progression on HTML5 spec at <http://whatwg.org/c>
      
      Reviewed by Antti Koivisto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159104 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e5720746
    • berto@igalia.com's avatar
      Webkit - Updated Tamil translation · 6a9e57e3
      berto@igalia.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124142
      
      Patch by Shantha kumar <shkumar@redhat.com> on 2013-11-12
      Reviewed by Gustavo Noronha Silva.
      
      * ta.po: updated.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159103 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a9e57e3
    • akling@apple.com's avatar
      Neutralize external resource loads in the new HTML5 spec copy. · 0a0c12da
      akling@apple.com authored
      Skip Parser/HTML5-8266-FullRender.html until I can make it less flaky.
      
      * Parser/resources/html5-8266.html:
      * Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159102 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0a0c12da
    • akling@apple.com's avatar
      Import a fresh version of the full HTML5 spec for perf testing. · 9b6223e3
      akling@apple.com authored
      Rubber-stamped by Antti Koivisto.
      
      * Parser/HTML5-8266-FullRender.html: Added.
      * Parser/HTML5-8266-ParseOnly.html: Added.
      * Parser/resources/html5-8266.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9b6223e3
    • zandobersek@gmail.com's avatar
      JSC bindings generator should generate deletable JSC functions · d2d6baf8
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122422
      
      Reviewed by Geoffrey Garen.
      
      Source/WebCore: 
      
      The JSC functions that the JSC bindings generator generates should be deletable to conform to
      the WebIDL specification, which instructs that the WebIDL operations must be configurable (which
      translates to the JSC functions being deletable).
      
      The generator will still produce a non-deletable JSC function for operations under almost all
      Web-facing interfaces since they're annotated with the OperationsNotDeletable attribute. The
      exception here is the Node interface that is having the attribute removed, with the provided
      test case testing that all the functions on the Node prototype object are writable, enumerable
      and configurable. This behavior conforms to the WebIDL specification and the behaviors of IE
      and Firefox. Chrome at the moment still provides non-configurable functions.
      
      Test: fast/dom/webidl-operations-on-node-prototype.html
      
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateImplementation): Enforce the non-deletable behavior of the JSC function if either the
      operation's interface is annotated with the OperationsNotDeletable attribute or the operation itself
      is annotated with the NotDeletable attribute.
      * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp: Update the JSC generator test baselines.
      * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp: Ditto.
      * bindings/scripts/test/JS/JSTestEventTarget.cpp: Ditto.
      * bindings/scripts/test/JS/JSTestInterface.cpp: Ditto.
      * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Ditto.
      * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
      * bindings/scripts/test/JS/JSTestTypedefs.cpp: Ditto.
      * dom/Node.idl: Remove the OperationsNotDeletable attribute.
      
      LayoutTests: 
      
      Test that all the functions on the Node prototype object (apart from the constructor) are
      writable, enumerable and configurable, as expected for WebIDL operations. This matches the
      WebIDL specification as well as IE and Firefox.
      
      Other affected test cases and baselines are updated to reflect the new behavior.
      
      * fast/dom/webidl-operations-on-node-prototype-expected.txt: Added.
      * fast/dom/webidl-operations-on-node-prototype.html: Added.
      * js/dom/getOwnPropertyDescriptor-expected.txt:
      * js/resources/getOwnPropertyDescriptor.js:
      * platform/mac/canvas/philip/tests/type.prototype-expected.txt: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d2d6baf8
    • ossy@webkit.org's avatar
      InvalidIndex shouldn't be private in GPRInfo and FPRInfo for sh4, mips and arm64 architectures. · 390a0c08
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124156
      
      Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-12
      Reviewed by Michael Saboff.
      
      * jit/FPRInfo.h:
      (JSC::FPRInfo::debugName):
      * jit/GPRInfo.h:
      (JSC::GPRInfo::debugName):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      390a0c08
    • timothy_horton@apple.com's avatar
      Remote Layer Tree: Sporadic memory corruption during painting · dacf1fd2
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124191
      
      Reviewed by Brady Eidson.
      
      Fix a logic error (flipped the logic, didn't flip the operator)
      made in the last version of r158982 that caused some crashes because
      it allowed us to overrun the end of cgPaintingRects.
      
      * Shared/mac/RemoteLayerBackingStore.mm:
      (RemoteLayerBackingStore::drawInContext):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159098 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dacf1fd2
    • akling@apple.com's avatar
      CodeBlock: Un-segment some Vectors. · e25e769a
      akling@apple.com authored
      <https://webkit.org/b/124188>
      
      Turn some SegmentedVectors into Vectors where the final item count
      is known at CodeBlock construction time. This removes unnecessary
      allocation and indirection.
      
      I've got ~4.5 MB below SegmentedVector<ValueProfile>::ensureSegment
      on Membuster3 (peak, before pressure signal) so this should help
      take a bit of the edge off there.
      
      Reviewed by Geoffrey Garen.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159097 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e25e769a
  2. 11 Nov, 2013 25 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
    • bfulgham@apple.com's avatar
      [Win] m_isCompositeFontReference is uninitialized. · b017a3d3
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124170
      
      Reviewed by Tim Horton.
      
      Initialize value to false, as is done in the other constructors for this data type.
      
      * platform/graphics/win/FontPlatformDataCGWin.cpp:
      (WebCore::FontPlatformData::FontPlatformData):
      * platform/graphics/win/FontPlatformDataCairoWin.cpp:
      (WebCore::FontPlatformData::FontPlatformData):
      * platform/graphics/win/FontPlatformDataWin.cpp:
      (WebCore::FontPlatformData::FontPlatformData):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b017a3d3
    • simon.fraser@apple.com's avatar
      Actually land a result for the test that I added (and make it a text test). · 9aa5303c
      simon.fraser@apple.com authored
      * compositing/tiling/tiled-in-iframe-expected.txt: Added.
      * compositing/tiling/tiled-in-iframe.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159080 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9aa5303c
    • timothy_horton@apple.com's avatar
      Remote Layer Tree: Implement Page Overlays · d808c0da
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124165
      <rdar://problem/15199056>
      
      Reviewed by Anders Carlsson.
      
      Implement page overlays, very similar to how they work in TiledCoreAnimationDrawingArea,
      but manipulating the PlatformCALayer tree instead of the CALayer tree directly.
      
      * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
      * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
      (WebKit::RemoteLayerTreeContext::outOfTreeLayerWasAdded):
      (WebKit::RemoteLayerTreeContext::outOfTreeLayerWillBeRemoved):
      (WebKit::RemoteLayerTreeContext::flushLayers):
      Add a list of out-of-tree GraphicsLayers which are flushed in addition
      to the page's GraphicsLayer tree, and functions to manipulate this list.
      
      * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
      Make RemoteLayerTreeDrawingArea a GraphicsLayerClient, so we can get callbacks
      from the GraphicsLayers that drive our page overlays.
      Override the relevant page overlay functions.
      Add storage for the root layer, view size, and a map of PageOverlay->GraphicsLayer.
      
      * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
      (WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
      Store the root GraphicsLayer for later use.
      
      (WebKit::RemoteLayerTreeDrawingArea::updateGeometry):
      Update the size of the page overlays when the DrawingArea's geometry changes.
      
      (WebKit::RemoteLayerTreeDrawingArea::updatePreferences):
      Update the page overlay settings when necessary.
      
      (WebKit::RemoteLayerTreeDrawingArea::didInstallPageOverlay):
      Create a GraphicsLayer for our page overlay, set it up, and parent it.
      Inform the RemoteLayerTreeContext that it will need to flush this GraphicsLayer,
      since it's not a part of the page's GraphicsLayer tree.
      
      (WebKit::RemoteLayerTreeDrawingArea::didUninstallPageOverlay):
      Tear down our page overlay's GraphicsLayer.
      
      (WebKit::RemoteLayerTreeDrawingArea::setPageOverlayNeedsDisplay):
      (WebKit::RemoteLayerTreeDrawingArea::setPageOverlayOpacity):
      (WebKit::RemoteLayerTreeDrawingArea::paintContents):
      (WebKit::RemoteLayerTreeDrawingArea::deviceScaleFactor):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159079 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d808c0da
    • andersca@apple.com's avatar
      Add a FrameLoadState object and begin moving loading related members from WebFrameProxy · 016f6b4c
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124163
      
      Reviewed by Beth Dakin.
      
      * UIProcess/API/C/WKFrame.cpp:
      (WKFrameGetFrameLoadState):
      * UIProcess/FrameLoadState.cpp: Added.
      (WebKit::FrameLoadState::FrameLoadState):
      (WebKit::FrameLoadState::~FrameLoadState):
      * UIProcess/FrameLoadState.h: Added.
      * UIProcess/WebFrameProxy.cpp:
      (WebKit::WebFrameProxy::WebFrameProxy):
      (WebKit::WebFrameProxy::didStartProvisionalLoad):
      (WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
      (WebKit::WebFrameProxy::didFailProvisionalLoad):
      (WebKit::WebFrameProxy::didCommitLoad):
      (WebKit::WebFrameProxy::didFinishLoad):
      (WebKit::WebFrameProxy::didFailLoad):
      (WebKit::WebFrameProxy::didSameDocumentNavigation):
      (WebKit::WebFrameProxy::setUnreachableURL):
      * UIProcess/WebFrameProxy.h:
      (WebKit::WebFrameProxy::frameLoadState):
      (WebKit::WebFrameProxy::loadState):
      (WebKit::WebFrameProxy::url):
      (WebKit::WebFrameProxy::provisionalURL):
      (WebKit::WebFrameProxy::unreachableURL):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::WebPageProxy):
      (WebKit::WebPageProxy::activeURL):
      * UIProcess/WebPageProxy.h:
      (WebKit::WebPageProxy::loadStateAtProcessExit):
      * WebKit2.xcodeproj/project.pbxproj:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159077 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      016f6b4c
    • commit-queue@webkit.org's avatar
      [Mac] Characters too close together in complex Arabic text · 52659d14
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124057
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-11-11
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      We weren't updating our total width variable with run's initial
      advance information, leading to widths that were too narrow.
      
      In addition, while initial advances for runs that aren't the first
      run are accounted for by baking in the initial advances into the
      previous character's advance, the initial advance for the first run
      has to be accounted for in ComplexTextController::offsetForPosition.
      
      Test: fast/text/complex-grapheme-cluster-with-initial-advance.html
      Test: fast/text/selection-in-initial-advance-region.html
      
      * platform/graphics/mac/ComplexTextController.cpp:
      (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Update
      total width variable
      (WebCore::ComplexTextController::offsetOfPosition): Account for
      the first run's initial advance.
      
      LayoutTests:
      
      complex-grapheme-cluster-with-initial-advance adds a span around a word in some
      complex Arabic text, and expects that the word spacing is the same as without the
      span.
      
      selection-in-initial-advance-region simulates a mouse drag across a complex text run
      with an initial advance. This makes sure that ComplexTextController::offsetForPosition
      doesn't crash when there is an initial advance.
      
      * fast/text/complex-grapheme-cluster-with-initial-advance-expected.html: Added.
      * fast/text/complex-grapheme-cluster-with-initial-advance.html: Added.
      * fast/text/selection-in-initial-advance-region-expected.txt: added
      * fast/text/selection-in-initial-advance-region.html: added
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52659d14
    • commit-queue@webkit.org's avatar
      Remove #include from test input of the *Messages.in processing scripts. · fb17ee13
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=123563
      
      Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-11-11
      Reviewed by Darin Adler.
      
      * Scripts/webkit2/messages_unittest.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159075 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fb17ee13
    • fpizlo@apple.com's avatar
      Remove ConstantFoldingPhase's weirdo compile-time optimization · f0dac3b6
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124169
      
      Reviewed by Mark Hahnenberg.
              
      It turns out that this compile-time optimization doesn't optimize compile times
      anymore. Kill it with fire.
      
      * dfg/DFGConstantFoldingPhase.cpp:
      (JSC::DFG::ConstantFoldingPhase::foldConstants):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159074 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f0dac3b6
    • alex.christensen@flexsim.com's avatar
      Unreviewed build fix for Win64. · dcee015c
      alex.christensen@flexsim.com authored
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
      Fixed 64-bit linker symbols.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159073 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dcee015c
    • beidson@apple.com's avatar
      Make IDBBackingStoreTransaction be RefCounted · ce8b1f89
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124168
      
      Reviewed by Tim Horton.
      
      This is necessarily to safely add a fully asynchronous interface into the IDB mechanism.
      
      * Modules/indexeddb/IDBBackingStoreInterface.h:
      * Modules/indexeddb/IDBBackingStoreTransactionInterface.h:
      * Modules/indexeddb/IDBTransactionBackend.h:
      
      * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
      (WebCore::IDBBackingStoreLevelDB::createBackingStoreTransaction):
      * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
      * Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159072 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce8b1f89
    • antti@apple.com's avatar
      End of line whitespace should collapse with white-space:pre-wrap;... · aae30d1b
      antti@apple.com authored
      End of line whitespace should collapse with white-space:pre-wrap; overflow-wrap:break-word in all cases
      https://bugs.webkit.org/show_bug.cgi?id=124158
      
      Source/WebCore: 
      
      Reviewed by Dave Hyatt.
              
      If a word just fits the line but the following space overflows we fail to collapse whitespaces 
      at the end of the line. This happens because with break-word we end up taking word breaking
      code path that does not have pre-wrap whitespace handling.
              
      This patch makes the behavior consistent and also matches Firefox.
      
      Test: fast/text/break-word-pre-wrap.html
      
      * rendering/RenderBlockLineLayout.cpp:
      (WebCore::BreakingContext::handleText):
              
          Don't take the word break code path if we are pre-wrap and the current character is space.
          Instead proceed to break the line normally as this is a valid break position.
      
      LayoutTests: 
      
      Reviewed by Dave Hyatt.
              
      Added a specific test and updates the test results of some complex tests that demonstrate the same issue.
      
      * fast/text/break-word-pre-wrap-expected.html: Added.
      * fast/text/break-word-pre-wrap.html: Added.
      * platform/mac/fast/forms/basic-textareas-expected.png:
      * platform/mac/fast/forms/basic-textareas-expected.txt:
      * platform/mac/fast/forms/basic-textareas-quirks-expected.png:
      * platform/mac/fast/forms/basic-textareas-quirks-expected.txt:
      * platform/mac-mountainlion/fast/forms/basic-textareas-expected.txt:
      * platform/mac-mountainlion/fast/forms/basic-textareas-quirks-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159071 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aae30d1b
    • betravis@adobe.com's avatar
      Web Inspector: [CSS Shapes] Highlight shape-outside when its element is... · 3422dd42
      betravis@adobe.com authored
      Web Inspector: [CSS Shapes] Highlight shape-outside when its element is selected in the Web Inspector
      https://bugs.webkit.org/show_bug.cgi?id=124071
      
      Reviewed by Timothy Hatcher.
      
      Source/WebCore:
      
      Adding code to pass computed shape information (path and bounds) to the Inspector overlay
      canvas, and the code to display it. The code creates a path based on ShapeInfo's computed
      shape. The shape highlight draws whenever an element is highlighted, via selection in
      the Inspector elements view.
      
      Test: inspector-protocol/model/highlight-shape-outside.html
      
      * inspector/InspectorOverlay.cpp:
      (WebCore::localPointToRoot): Convert a local point to be relative to the root view.
      (WebCore::appendPathCommandAndPoints): Helper for building a single segment's worth
      of the overall path.
      (WebCore::appendPathSegment): Build a single segment's worth of the overall path.
      (WebCore::buildObjectForShapeOutside): Build an object to pass to the Inspector overlay
      that represents the shape.
      (WebCore::buildObjectForElementInfo): Call buildObjectForShapeOutside and pass the
      resulting object along.
      * inspector/InspectorOverlayPage.js:
      (pathCommand): Draw a single path command.
      (drawPath): Draw the overall path.
      (_drawShapeHighlight): Draw the highlight for the given shapeInfo.
      (drawNodeHighlight): Call _drawShapeHighlight.
      * rendering/shapes/PolygonShape.h:
      (WebCore::PolygonShape::polygon): Expose the underlying vertex information for a
      PolygonShape.
      * rendering/shapes/RasterShape.h:
      * rendering/shapes/RectangleShape.h:
      (WebCore::RectangleShape::logicalRx): Expose the logical radii for a shape.
      (WebCore::RectangleShape::logicalRy): Ditto.
      * rendering/shapes/Shape.h:
      * rendering/shapes/ShapeInfo.h:
      (WebCore::ShapeInfo::computedShapePhysicalBoundingBox): The physical bounds of a
      shape in renderer coordinates.
      (WebCore::ShapeInfo::shapeToRendererPoint): Convert shape coordinates to renderer
      coordinates.
      (WebCore::ShapeInfo::shapeToRendererSize): Ditto.
      (WebCore::ShapeInfo::ShapeInfo):
      
      LayoutTests:
      
      Test that the information passed to the Inspector overlay properly corresponds to the
      underlying shape. Retrieving the shape highlight information involves a series of
      steps and has been abstracted into shape-info-helper.js, which supplies
      Inspector.shapeOutsideInfo inside an Inspector test, and the ShapeInfoHelper.runShapesTest
      method to begin a test.
      
      * inspector-protocol/model/highlight-shape-outside-expected.txt: Added.
      * inspector-protocol/model/highlight-shape-outside.html: Added.
      * inspector-protocol/resources/shape-info-helper.js: Added.
      (window.ShapeInfoHelper): Exposes ShapeInfoHelper.runShapesTest.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159070 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3422dd42
    • fpizlo@apple.com's avatar
      Make bytecode dumping use the right opcode names for inc/dec. · 9bca4b84
      fpizlo@apple.com authored
      Rubber stamped by Mark Hahnenberg.
      
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::dumpBytecode):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159069 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9bca4b84
    • ap@apple.com's avatar
      Support WebCrypto KeyPair interface · b4086485
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124161
      
      Reviewed by Geoffrey Garen.
      
      No new tests yet, will be tested once generateKey is implemented for any RSA algorithms.
      
      * CMakeLists.txt:
      * DerivedSources.make:
      * GNUmakefile.list.am:
      * WebCore.xcodeproj/project.pbxproj:
      Added new files.
      
      * bindings/js/JSDOMPromise.h: Support returning a key pair via a promise.
      
      * bindings/js/JSCryptoKeyPairCustom.cpp: Added.
      (WebCore::JSCryptoKeyPair::visitChildren):
      * crypto/CryptoKey.idl:
      CryptoKey wrapper is reachable through KeyPair, but it doesn't have (or need)
      a back pointer.
      
      * crypto/CryptoKeyPair.cpp: Added.
      (WebCore::CryptoKeyPair::CryptoKeyPair):
      (WebCore::CryptoKeyPair::~CryptoKeyPair):
      * crypto/CryptoKeyPair.h: Added.
      (WebCore::CryptoKeyPair::create):
      (WebCore::CryptoKeyPair::publicKey):
      (WebCore::CryptoKeyPair::privateKey):
      * crypto/CryptoKeyPair.idl: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159068 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b4086485