1. 16 Nov, 2013 7 commits
    • fpizlo@apple.com's avatar
      Fix indentation of JSVariableObject.h. · 4cd7f153
      fpizlo@apple.com authored
      Rubber stamped by Mark Hahnenberg.
              
      I'm about to do some damage to this file. I wanted to give it some sanity first.
      
      * runtime/JSVariableObject.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159383 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4cd7f153
    • timothy_horton@apple.com's avatar
      Checkmarks are shifted down on iPhone at build.webkit.org/dashboard · 1b019c51
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122909
      
      Reviewed by Timothy Hatcher.
      
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/checkmark.svg: Added.
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:
      (StatusLineView.prototype.set repeatCount):
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
      (.status-line.good .bubble.pictogram):
      Use an SVG image instead of an obscure font for the checkboxes so they
      render identically on all platforms.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159382 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1b019c51
    • commit-queue@webkit.org's avatar
      [sh4] Fix build (broken since r159346). · c19522ac
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124455
      
      Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-16
      Reviewed by Oliver Hunt.
      
      Fix LLINT implementation for sh4 architecture to handle properly load and store operations with pr register.
      
      * offlineasm/sh4.rb:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159381 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c19522ac
    • ap@apple.com's avatar
      WebCrypto no longer uses sequences of ArrayBuffers · e51f247f
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124451
      
      Build fix.
      
      * crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::calculateSignature):
      Now that the function became shorter, clang realized that a variable was used
      uninitialized in an impossible code path.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159380 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e51f247f
    • ap@apple.com's avatar
      WebCrypto no longer uses sequences of ArrayBuffers · b651c9a6
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124451
      
      Reviewed by Sam Weinig.
      
      Source/WebCore: 
      
      Covered by existing tests.
      
      Changed all operations to take single CryptoOperationData objects.
      
      * bindings/js/JSCryptoOperationData.cpp:
      * bindings/js/JSCryptoOperationData.h:
      * bindings/js/JSSubtleCryptoCustom.cpp:
      (WebCore::JSSubtleCrypto::encrypt):
      (WebCore::JSSubtleCrypto::decrypt):
      (WebCore::JSSubtleCrypto::sign):
      (WebCore::JSSubtleCrypto::verify):
      (WebCore::JSSubtleCrypto::digest):
      * crypto/CryptoAlgorithm.cpp:
      (WebCore::CryptoAlgorithm::encrypt):
      (WebCore::CryptoAlgorithm::decrypt):
      (WebCore::CryptoAlgorithm::sign):
      (WebCore::CryptoAlgorithm::verify):
      (WebCore::CryptoAlgorithm::digest):
      * crypto/CryptoAlgorithm.h:
      * crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
      (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
      (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
      * crypto/algorithms/CryptoAlgorithmAES_CBC.h:
      * crypto/algorithms/CryptoAlgorithmHMAC.h:
      * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
      * crypto/algorithms/CryptoAlgorithmSHA1.cpp:
      (WebCore::CryptoAlgorithmSHA1::digest):
      * crypto/algorithms/CryptoAlgorithmSHA1.h:
      * crypto/algorithms/CryptoAlgorithmSHA224.cpp:
      (WebCore::CryptoAlgorithmSHA224::digest):
      * crypto/algorithms/CryptoAlgorithmSHA224.h:
      * crypto/algorithms/CryptoAlgorithmSHA256.cpp:
      (WebCore::CryptoAlgorithmSHA256::digest):
      * crypto/algorithms/CryptoAlgorithmSHA256.h:
      * crypto/algorithms/CryptoAlgorithmSHA384.cpp:
      (WebCore::CryptoAlgorithmSHA384::digest):
      * crypto/algorithms/CryptoAlgorithmSHA384.h:
      * crypto/algorithms/CryptoAlgorithmSHA512.cpp:
      (WebCore::CryptoAlgorithmSHA512::digest):
      * crypto/algorithms/CryptoAlgorithmSHA512.h:
      * crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:
      (WebCore::transformAES_CBC):
      (WebCore::CryptoAlgorithmAES_CBC::encrypt):
      (WebCore::CryptoAlgorithmAES_CBC::decrypt):
      * crypto/mac/CryptoAlgorithmHMACMac.cpp:
      (WebCore::calculateSignature):
      (WebCore::CryptoAlgorithmHMAC::sign):
      (WebCore::CryptoAlgorithmHMAC::verify):
      * crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h:
      
      LayoutTests: 
      
      Updated tests accordingly.
      
      * crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
      * crypto/subtle/aes-cbc-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-import-jwk.html:
      * crypto/subtle/aes-cbc-wrong-key-class-expected.txt:
      * crypto/subtle/aes-cbc-wrong-key-class.html:
      * crypto/subtle/argument-conversion-expected.txt:
      * crypto/subtle/argument-conversion.html:
      * crypto/subtle/hmac-import-jwk.html:
      * crypto/subtle/hmac-sign-verify-empty-key.html:
      * crypto/subtle/hmac-sign-verify.html:
      * crypto/subtle/rsassa-pkcs1-v1_5-sign-verify.html:
      * crypto/subtle/sha-1-expected.txt:
      * crypto/subtle/sha-1.html:
      * crypto/subtle/sha-224-expected.txt:
      * crypto/subtle/sha-224.html:
      * crypto/subtle/sha-256-expected.txt:
      * crypto/subtle/sha-256.html:
      * crypto/subtle/sha-384-expected.txt:
      * crypto/subtle/sha-384.html:
      * crypto/subtle/sha-512-expected.txt:
      * crypto/subtle/sha-512.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159379 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b651c9a6
    • zoltan@webkit.org's avatar
      Remove the include of LineWidth.h from SimpleLineLayoutFunctions.cpp · 40a88fcc
      zoltan@webkit.org authored
      <https://webkit.org/b/124449>
      
      Reviewed by Antti Koivisto.
      
      I removed the include of LineWidth, since SimpleLineLayoutFunctions.cpp doesn't use it.
      
      No new tests, no behavior change.
      
      * rendering/SimpleLineLayoutFunctions.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159378 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40a88fcc
    • ap@apple.com's avatar
      Support exporting symmetric keys as JWK · ca827605
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124442
      
      Reviewed by Sam Weinig.
      
      Source/JavaScriptCore: 
      
      * runtime/JSONObject.h: Export JSONStringify.
      
      Source/WebCore: 
      
      Error handling is not consistent yet - some errors cause exceptions, and others
      result in rejected promises. This part of spec is incomplete, so I basically did
      what was most straightforward in each case.
      
      * bindings/js/JSCryptoKeySerializationJWK.h: 
      * bindings/js/JSCryptoKeySerializationJWK.cpp:
      (WebCore::JSCryptoKeySerializationJWK::reconcileUsages): Updated a comment with a better link.
      (WebCore::JSCryptoKeySerializationJWK::buildJSONForOctetSequence): A helper to building JWK.
      (WebCore::JSCryptoKeySerializationJWK::addToJSON): Ditto.
      (WebCore::JSCryptoKeySerializationJWK::addBoolToJSON): Ditto.
      (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON): Ditto. The code for
      mapping is my best guess, this all needs to be specified.
      (WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON): A helper to building JWK.
      (WebCore::JSCryptoKeySerializationJWK::serialize): Build a JSON string for the key.
      
      * bindings/js/JSSubtleCryptoCustom.cpp:
      (WebCore::JSSubtleCrypto::importKey): Updated a comment.
      (WebCore::JSSubtleCrypto::exportKey): Use CryptoKeySerialization (also for raw keys,
      for consistency).
      
      * crypto/CryptoKey.h:
      (WebCore::CryptoKey::algorithmIdentifier):
      (WebCore::CryptoKey::usagesBitmap):
      Exposed data needed for building JWK (it used to be only exposed in a form suitable
      for DOM accessors).
      
      * crypto/keys/CryptoKeyHMAC.h: Ditto, added an accessor for JWK.
      
      * crypto/keys/CryptoKeySerializationRaw.cpp: (WebCore::CryptoKeySerializationRaw::serialize):
      * crypto/keys/CryptoKeySerializationRaw.h:
      Moved from JSSubtleCryptoCustom.cpp for consistency.
      
      Source/WTF: 
      
      Base64URL encoding doesn't use '=' padding, and doesn't need any other options.
      Added this mode for encode, and removed policy arguments from exposed functions.
      
      * wtf/text/Base64.cpp:
      (WTF::base64EncodeInternal):
      (WTF::base64URLEncode):
      (WTF::base64URLDecode):
      * wtf/text/Base64.h:
      (WTF::base64URLEncode):
      
      LayoutTests: 
      
      * crypto/subtle/aes-export-key-expected.txt:
      * crypto/subtle/aes-export-key.html:
      * crypto/subtle/hmac-export-key-expected.txt:
      * crypto/subtle/hmac-export-key.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159377 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca827605
  2. 15 Nov, 2013 33 commits
    • commit-queue@webkit.org's avatar
      [Win] JavaScript crashes on 64-bit with JIT enabled. · c5d9e32c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124409
      
      Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-15
      Reviewed by Michael Saboff.
      
      These are issues found with JIT on 64-bit:
      - The registers rsi and rdi in callToJavaScript needs to be saved and restored. This is required by the Windows 64-bit ABI.
      - The getHostCallReturnValue function needs to be updated according to it's GCC counterpart.
      - The poke argument offset needs to be 20h, because Windows 64-bit ABI requires stack space allocated for the 4 argument registers.
      
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Re-added JITStubsMSVC64.asm to project.
      * jit/CCallHelpers.h: Set poke argument offset.
      (JSC::CCallHelpers::setupArguments): Compile fix, added needed method.
      * jit/JITStubsMSVC64.asm: Save and restore registers rsi and rdi.
                                Update getHostCallReturnValue according to the GCC version.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5d9e32c
    • roger_fong@apple.com's avatar
      Unreviewed, gtest project file cleanup. · 2e2648db
      roger_fong@apple.com authored
      * gtest/msvc/gtest-md.vcxproj:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159375 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e2648db
    • simon.fraser@apple.com's avatar
      Make results.html more sane · 11e0e653
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124446
      
      Reviewed by Sam Weinig.
      
      Fix various issues with results.html:
          * make it use page scrolling, not overflow scrolling
          * remove -webkit-flex stuff that wasn't doing anything
          * prettify the floating overlay for flagged tests
          * pull some markup out of the JS and into the HTML
          * remove the self-testing, which provides very little reward.
      
      * fast/harness/resources/results-test.js: Removed.
      * fast/harness/results-expected.txt:
      * fast/harness/results.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159374 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      11e0e653
    • beidson@apple.com's avatar
      Move IDBCursorBackend operations into their own files · 1eae3156
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124444
      
      Reviewed by Tim Horton.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * WebCore.xcodeproj/project.pbxproj:
      
      * Modules/indexeddb/IDBCursorBackend.cpp:
      * Modules/indexeddb/IDBCursorBackend.h:
      (WebCore::IDBCursorBackend::cursorType):
      (WebCore::IDBCursorBackend::deprecatedBackingStoreCursor):
      (WebCore::IDBCursorBackend::deprecatedSetBackingStoreCursor):
      (WebCore::IDBCursorBackend::deprecatedSetSavedBackingStoreCursor):
      
      * Modules/indexeddb/IDBCursorBackendOperations.cpp: Added.
      (WebCore::CallOnDestruct::CallOnDestruct):
      (WebCore::CallOnDestruct::~CallOnDestruct):
      (WebCore::CursorAdvanceOperation::perform):
      (WebCore::CursorIterationOperation::perform):
      (WebCore::CursorPrefetchIterationOperation::perform):
      * Modules/indexeddb/IDBCursorBackendOperations.h: Added.
      (WebCore::CursorIterationOperation::create):
      (WebCore::CursorIterationOperation::CursorIterationOperation):
      (WebCore::CursorAdvanceOperation::create):
      (WebCore::CursorAdvanceOperation::CursorAdvanceOperation):
      (WebCore::CursorPrefetchIterationOperation::create):
      (WebCore::CursorPrefetchIterationOperation::CursorPrefetchIterationOperation):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159373 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1eae3156
    • timothy_horton@apple.com's avatar
      results.html should have a link to historical results for a test/all failing tests · 02f2027e
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124402
      
      Reviewed by Simon Fraser.
      
      * fast/harness/results.html:
      * fast/harness/resources/results-test.js:
      Add the link to timeout/crash results too.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159372 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02f2027e
    • ryuan.choi@samsung.com's avatar
      Unreviewed EFL build fix after r159358. · fcad6e92
      ryuan.choi@samsung.com authored
      * UIProcess/efl/PagePolicyClientEfl.cpp:
      (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
      * UIProcess/efl/PagePolicyClientEfl.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159371 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fcad6e92
    • timothy_horton@apple.com's avatar
      http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html is slow,... · 6886548c
      timothy_horton@apple.com authored
      http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html is slow, frequently > 30 second timeout
      https://bugs.webkit.org/show_bug.cgi?id=124373
      
      * platform/mac/TestExpectations:
      Mark test as timeout as well, since that happens sometimes too.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159370 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6886548c
    • dfarler@apple.com's avatar
      Copy ASAN flag settings to WebCore and JavaScriptCore intermediate build tools · 73ac9c47
      dfarler@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124362
      
      Reviewed by David Kilzer.
      
      Source/JavaScriptCore:
      
      * Configurations/ToolExecutable.xcconfig:
      Use ASAN_C*FLAGS.
      
      Source/WebCore:
      
      No new tests needed.
      
      * WebCore.xcodeproj/project.pbxproj:
      Use ASAN_C*FLAGS for WebCoreExportFileGenerator.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159369 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      73ac9c47
    • jer.noble@apple.com's avatar
      [Mac][AVF] Allow video and audio tracks to be initialized with an AVAssetTrack. · 6d19e068
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124421
      
      Reviewed by Eric Carlson.
      
      Currently, VideoTrackPrivateAVFObjC and AudioTrackPrivateAVFObjC are initialized with an
      AVPlayerItemTrack, but most of its methods use the AVAssetTrack wrapped by the
      AVPlayerItemTrack. Allow these objects to be alternatively initialized with an AVAssetTrack.
      
      Add factory methods taking an AVAssetTrack:
      * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:
      (WebCore::AudioTrackPrivateAVFObjC::create):
      * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
      (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC):
      (WebCore::AudioTrackPrivateAVFObjC::setAssetTrack):
      (WebCore::AudioTrackPrivateAVFObjC::assetTrack):
      * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:
      (WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC):
      (WebCore::VideoTrackPrivateAVFObjC::setAssetTrack):
      (WebCore::VideoTrackPrivateAVFObjC::assetTrack):
      * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h:
      
      Use m_assetTrack instead of [m_playerItemTrack assetTrack]:
      * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h:
      (WebCore::AVTrackPrivateAVFObjCImpl::assetTrack):
      * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:
      (WebCore::AVTrackPrivateAVFObjCImpl::AVTrackPrivateAVFObjCImpl):
      (WebCore::AVTrackPrivateAVFObjCImpl::enabled):
      (WebCore::AVTrackPrivateAVFObjCImpl::setEnabled):
      (WebCore::AVTrackPrivateAVFObjCImpl::audioKind):
      (WebCore::AVTrackPrivateAVFObjCImpl::videoKind):
      (WebCore::AVTrackPrivateAVFObjCImpl::id):
      (WebCore::AVTrackPrivateAVFObjCImpl::label):
      (WebCore::AVTrackPrivateAVFObjCImpl::language):
      (WebCore::AVTrackPrivateAVFObjCImpl::trackID):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159368 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d19e068
    • jer.noble@apple.com's avatar
      Unreviewed Win build fix; setCurrentTime() no longer takes an exception parameter. · 9eaea415
      jer.noble@apple.com authored
      * FullscreenVideoController.cpp:
      (FullscreenVideoController::setCurrentTime):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159367 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9eaea415
    • mhahnenberg@apple.com's avatar
      Remove JSChunk · dc0f013d
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124435
      
      Reviewed by Geoffrey Garen.
      
      It's empty and has been since it was added 3 years ago.
      
      * CMakeLists.txt:
      * runtime/JSChunk.cpp: Removed.
      * runtime/JSChunk.h: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159366 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dc0f013d
    • beidson@apple.com's avatar
      Let IDBDatabaseBackend create IDBTransactionBackend's directly · 6e5f0963
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124438
      
      Reviewed by Beth Dakin.
      
      Source/WebCore:
      
      Create IDBTransactionBackends directly:
      * Modules/indexeddb/IDBDatabaseBackend.cpp:
      (WebCore::IDBDatabaseBackend::createTransaction):
      * Modules/indexeddb/IDBDatabaseBackend.h:
      
      Remove maybeCreateTransactionBackend():
      * Modules/indexeddb/IDBFactoryBackendInterface.h:
      * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
      * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
      
      Source/WebKit2:
      
      Remove maybeCreateTransactionBackend():
      * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
      * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159365 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e5f0963
    • timothy_horton@apple.com's avatar
      Occasionally, hundreds of tests fail with small text diffs on Mavericks · 55d46133
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124312
      
      Reviewed by Alexey Proskuryakov.
      
      Try reverting the part of r158652 that deleted all of the persistent
      defaults, in the thought that there might be some sort of race between
      processes causing some settings to be left in the wrong state.
      
      * DumpRenderTree/mac/DumpRenderTree.mm:
      (setDefaultsToConsistentValuesForTesting):
      * WebKitTestRunner/mac/main.mm:
      (setDefaultsToConsistentValuesForTesting):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159364 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55d46133
    • jer.noble@apple.com's avatar
      HTMLMediaElement should not throw an exception from setCurrentTime or fastSeek. · b96ab1a9
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124294
      
      Reviewed by Eric Carlson.
      
      Source/WebCore:
      
      Update the seek logic to match the current specification. This means removing exception
      throwing from both the .idl and the implementation.
      
      Remove the ExceptionCode parameter from setCurrentTime and fastSeek:
      * html/HTMLMediaElement.cpp:
      (HTMLMediaElement::fastSeek):
      (HTMLMediaElement::seek):
      (HTMLMediaElement::seekWithTolerance):
      (HTMLMediaElement::setCurrentTime):
      * html/HTMLMediaElement.h:
      * html/HTMLMediaElement.idl:
      * html/MediaController.cpp:
      (MediaController::setCurrentTime):
      * html/MediaController.h:
      * html/MediaController.idl:
      * html/MediaControllerInterface.h:
      
      Do not pass in an ExceptionCode placeholder when calling seek:
      * html/HTMLMediaElement.cpp:
      (HTMLMediaElement::rewind):
      (HTMLMediaElement::returnToRealtime):
      (HTMLMediaElement::finishSeek):
      (HTMLMediaElement::playInternal):
      (HTMLMediaElement::mediaPlayerTimeChanged):
      (HTMLMediaElement::mediaPlayerDurationChanged):
      (HTMLMediaElement::applyMediaFragmentURI):
      * html/HTMLMediaElement.h:
      * html/HTMLMediaElement.idl:
      * html/MediaController.cpp:
      (MediaController::bringElementUpToSpeed):
      * html/MediaController.h:
      * html/MediaController.idl:
      * html/MediaControllerInterface.h:
      * html/shadow/MediaControlElementTypes.cpp:
      (WebCore::MediaControlSeekButtonElement::seekTimerFired):
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlRewindButtonElement::defaultEventHandler):
      (WebCore::MediaControlTimelineElement::defaultEventHandler):
      * platform/mac/WebVideoFullscreenHUDWindowController.mm:
      (-[WebVideoFullscreenHUDWindowController setCurrentTime:]):
      
      LayoutTests:
      
      * media/video-seek-no-src-exception-expected.txt: Removed.
      * media/video-seek-no-src-exception.html: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159363 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b96ab1a9
    • beidson@apple.com's avatar
      Remove last vestiges of IDBBackingStore* from IDBTransactionBackend. · 046ca9e7
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124436
      
      Reviewed by Tim Horton.
      
      Source/WebCore:
      
      * Modules/indexeddb/IDBFactoryBackendInterface.h: Removed createCursorBackend.
      * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Removed createCursorBackend.
      * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Removed createCursorBackend.
      
      * Modules/indexeddb/IDBCursorBackend.h:
      
      * Modules/indexeddb/IDBTransactionBackend.cpp:
      * Modules/indexeddb/IDBTransactionBackend.h:
      
      * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
      (WebCore::IDBServerConnectionLevelDB::openCursor):
      
      Source/WebKit2:
      
      * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp: Removed createCursorBackend.
      * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159362 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      046ca9e7
    • timothy_horton@apple.com's avatar
      Layout Test editing/selection/5057506.html frequently times out on Mac WK2 · 6fec6783
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124437
      
      * platform/mac-wk2/TestExpectations:
      Mark aforementioned test as a flaky-timeout.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159361 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fec6783
    • mhahnenberg@apple.com's avatar
      Remove VTableSpectrum · 5906583d
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124427
      
      Reviewed by Filip Pizlo.
      
      Source/JavaScriptCore:
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * heap/Heap.cpp:
      (JSC::Heap::lastChanceToFinalize):
      * heap/Heap.h:
      * heap/MarkedBlock.cpp:
      (JSC::MarkedBlock::callDestructor):
      * heap/SlotVisitor.cpp:
      (JSC::visitChildren):
      * heap/SlotVisitor.h:
      * heap/VTableSpectrum.cpp: Removed.
      * heap/VTableSpectrum.h: Removed.
      
      Source/WebKit/blackberry:
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      
      Source/WTF:
      
      * wtf/Platform.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159360 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5906583d
    • beidson@apple.com's avatar
      Make IDBIndexWriter a LevelDB specific concept · fcd7ae95
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124434
      
      Reviewed by Tim Horton.
      
      This includes renaming the class and moving it into the leveldb subdirectory.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * WebCore.xcodeproj/project.pbxproj:
      
      * Modules/indexeddb/IDBBackingStoreInterface.h:
      * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
      
      * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
      (WebCore::IDBBackingStoreLevelDB::makeIndexWriters):
      * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
      
      * Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBIndexWriter.cpp.
      (WebCore::IDBIndexWriterLevelDB::IDBIndexWriterLevelDB):
      (WebCore::IDBIndexWriterLevelDB::writeIndexKeys):
      (WebCore::IDBIndexWriterLevelDB::verifyIndexKeys):
      (WebCore::IDBIndexWriterLevelDB::addingKeyAllowed):
      * Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBIndexWriter.h.
      (WebCore::IDBIndexWriterLevelDB::create):
      
      * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
      (WebCore::IDBServerConnectionLevelDB::setIndexKeys):
      (WebCore::IDBServerConnectionLevelDB::put):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159359 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fcd7ae95
    • mitz@apple.com's avatar
      Give the policy client the originating frame of a navigation action · f9b0abcc
      mitz@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124431
      
      Reviewed by Anders Carlsson.
      
      Source/WebKit2: 
      
      * Platform/CoreIPC/HandleMessage.h:
      (CoreIPC::callMemberFunction): Added a seventh message parameter to this template.
      
      * Shared/APIClientTraits.cpp: Defined API traits for WKPagePolicyClient, which now has two
      versions.
      * Shared/APIClientTraits.h: Declared APIClientTraits<WKPagePolicyClient>.
      
      * UIProcess/API/C/WKPage.h: Added an originatingFrame parameter to
      WKPageDecidePolicyForNavigationActionCallback and deprecated the old version. Bumped the
      policy client version to 1.
      
      * UIProcess/API/mac/WKBrowsingContextController.mm:
      (setUpPagePolicyClient): Include the originating frame’s URL under the a new key in the
      action information dictionary.
      * UIProcess/API/mac/WKBrowsingContextPolicyDelegate.h: Declared
      WKActionOriginatingFrameURLKey.
      
      * UIProcess/WebInspectorProxy.cpp:
      (WebKit::decidePolicyForNavigationAction): Added originatingFrame parameter.
      (WebKit::WebInspectorProxy::createInspectorPage): Updated to the new version of the policy
      client interface.
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::decidePolicyForNavigationAction): Added originatingFrameID parameter
      and passing the originating frame to the policy client.
      * UIProcess/WebPageProxy.h:
      * UIProcess/WebPageProxy.messages.in: Added originatingFrameID paremeter to
      DecidePolicyForNavigationAction.
      
      * UIProcess/WebPolicyClient.cpp:
      (WebKit::WebPolicyClient::decidePolicyForNavigationAction): Added originatingFrame
      parameter, which is passed to the client callback.
      * UIProcess/WebPolicyClient.h:
      
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Determine the
      originating frame for link activation and form submission actions and send its ID in the
      DecidePolicyForNavigationAction message.
      
      Tools: 
      
      * MiniBrowser/mac/WK2BrowserWindowController.m:
      (decidePolicyForNavigationAction): Added originatingFrame parameter.
      (-[WK2BrowserWindowController awakeFromNib]): Updated for the new version of the policy
      client.
      
      * TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp:
      (TestWebKitAPI::decidePolicyForNavigationAction): Added originatingFrame parameter.
      (TestWebKitAPI::setPagePolicyClient): Updated for the new version of the policy client.
      
      * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
      (TestWebKitAPI::decidePolicyForNavigationAction): Added originatingFrame parameter.
      (TestWebKitAPI::TEST): Updated for the new version of the policy client.
      
      * WebKitTestRunner/TestController.cpp:
      (WTR::TestController::createWebViewWithOptions): Updated for the new version of the policy
      client.
      (WTR::TestController::decidePolicyForNavigationAction): Added originatingFrame parameter.
      * WebKitTestRunner/TestController.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159358 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f9b0abcc
    • achicu@adobe.com's avatar
      Web Inspector: DOM.performSearch should accept a list of context nodes · 1aa38677
      achicu@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124390
      
      Reviewed by Timothy Hatcher.
      
      Source/WebCore:
      
      Extracted the code in InspectorDOMAgent::performSearch into its own helper class
      called InspectorNodeFinder. Also added a new array parameter called "nodeIds"
      that can be used to limit the search results to just partial subtrees.
      
      Tests: inspector-protocol/dom/dom-search-crash.html
             inspector-protocol/dom/dom-search-with-context.html
             inspector-protocol/dom/dom-search.html
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * inspector/protocol/DOM.json:
      * inspector/InspectorAllInOne.cpp:
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::performSearch):
      * inspector/InspectorDOMAgent.h:
      * inspector/InspectorNodeFinder.cpp: Added.
      (WebCore::stripCharacters):
      (WebCore::InspectorNodeFinder::InspectorNodeFinder):
      (WebCore::InspectorNodeFinder::performSearch):
      (WebCore::InspectorNodeFinder::searchUsingDOMTreeTraversal):
      (WebCore::InspectorNodeFinder::matchesAttribute):
      (WebCore::InspectorNodeFinder::matchesElement):
      (WebCore::InspectorNodeFinder::searchUsingXPath):
      (WebCore::InspectorNodeFinder::searchUsingCSSSelectors):
      * inspector/InspectorNodeFinder.h: Added.
      (WebCore::InspectorNodeFinder::results):
      
      LayoutTests:
      
      Added new inspector-protocol tests to check for the DOM.performSearch implementation.
      Also, ported an existing test from the old "inspector" format.
      
      * http/tests/inspector-protocol/resources/InspectorDOMListener.js: Added boilerplate code that
      can be used to track node ids and class names.
      (createDOMListener.createNodeAttributesMap):
      (createDOMListener.collectNode):
      (createDOMListener.onSetChildNodes):
      (createDOMListener.onChildNodeRemoved):
      (createDOMListener.onChildNodeInserted):
      (createDOMListener.return.getNodeById):
      (createDOMListener.return.getNodeIdentifier):
      * http/tests/inspector-protocol/resources/InspectorTest.js:
      (InspectorFrontendAPI.dispatchMessageAsync): Added a way to catch all the messages received in the inspector.
      It is useful for debugging the test file.
      (InspectorTest.addEventListener): Helper method to register multiple handlers for the same event.
      * inspector-protocol/dom/dom-search-crash-expected.txt: Added.
      * inspector-protocol/dom/dom-search-crash.html: Added.
      * inspector-protocol/dom/dom-search-expected.txt: Added.
      * inspector-protocol/dom/dom-search-with-context-expected.txt: Added.
      * inspector-protocol/dom/dom-search-with-context.html: Added.
      * inspector-protocol/dom/dom-search.html: Added.
      * inspector-protocol/dom/resources/dom-search-crash-iframe.html: Cloned from inspector/dom/resources/dom-search-crash-iframe.html
      * inspector-protocol/dom/resources/dom-search-iframe.html: Added.
      * inspector-protocol/dom/resources/dom-search-queries.js: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159357 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1aa38677
    • timothy_horton@apple.com's avatar
      Make lint-test-expectations pass for platform/win · 7e740e9f
      timothy_horton@apple.com authored
      * platform/win/TestExpectations:
      I always kept the stronger expectation in the case of duplicates.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159356 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7e740e9f
    • beidson@apple.com's avatar
      Remove IDBBackingStoreInterface.h includes that are no longer needed · 21c65fb2
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124433
      
      Reviewed by Tim Horton.
      
      * Modules/indexeddb/IDBCursorBackend.cpp:
      * Modules/indexeddb/IDBCursorBackend.h:
      * Modules/indexeddb/IDBFactoryBackendInterface.h:
      * Modules/indexeddb/IDBTransactionBackend.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159355 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      21c65fb2
    • zoltan@webkit.org's avatar
      Move BreakingContext and LineBreaker into their own files · 64be122e
      zoltan@webkit.org authored
      <https://webkit.org/b/124336>
      
      Reviewed by David Hyatt.
      
      In this change I introduced 'line' subdirectory inside 'rendering', this directory will contain all the classes
      which have been refactored from RenderBlockLineLayout.cpp. This change contains the separation of BreakingContext,
      and the separation of LineBreaker classes. Since I wanted to keep the helper functions organized, I also added a
      new file called LineInlineHeaders.h, which contains the functions which used in LineBreaker.h and BreakingContext.h.
      I moved LineInfo class into line directory. It was necessary this time, since I added a cpp for it. I'll move the
      rest of the line layout related helper classes later. (I wanted to minimize merge conflicts.)
      
      No new tests, no behavior change.
      
      * CMakeLists.txt:
      * GNUmakefile.am:
      * GNUmakefile.list.am:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCoreCommon.props:
      * WebCore.xcodeproj/project.pbxproj:
      * rendering/RenderBlockLineLayout.cpp:
      (WebCore::createRun):
      * rendering/line/BreakingContextInlineHeaders.h: Added.
      (WebCore::WordMeasurement::WordMeasurement):
      (WebCore::TrailingObjects::TrailingObjects):
      (WebCore::TrailingObjects::setTrailingWhitespace):
      (WebCore::TrailingObjects::clear):
      (WebCore::TrailingObjects::appendBoxIfNeeded):
      (WebCore::deprecatedAddMidpoint):
      (WebCore::startIgnoringSpaces):
      (WebCore::stopIgnoringSpaces):
      (WebCore::ensureLineBoxInsideIgnoredSpaces):
      (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
      (WebCore::BreakingContext::BreakingContext):
      (WebCore::BreakingContext::currentObject):
      (WebCore::BreakingContext::lineBreak):
      (WebCore::BreakingContext::lineBreakRef):
      (WebCore::BreakingContext::lineWidth):
      (WebCore::BreakingContext::atEnd):
      (WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
      (WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
      (WebCore::BreakingContext::initializeForCurrentObject):
      (WebCore::BreakingContext::increment):
      (WebCore::BreakingContext::handleBR):
      (WebCore::borderPaddingMarginStart):
      (WebCore::borderPaddingMarginEnd):
      (WebCore::shouldAddBorderPaddingMargin):
      (WebCore::previousInFlowSibling):
      (WebCore::inlineLogicalWidth):
      (WebCore::BreakingContext::handleOutOfFlowPositioned):
      (WebCore::BreakingContext::handleFloat):
      (WebCore::shouldSkipWhitespaceAfterStartObject):
      (WebCore::BreakingContext::handleEmptyInline):
      (WebCore::BreakingContext::handleReplaced):
      (WebCore::firstPositiveWidth):
      (WebCore::updateSegmentsForShapes):
      (WebCore::iteratorIsBeyondEndOfRenderCombineText):
      (WebCore::nextCharacter):
      (WebCore::updateCounterIfNeeded):
      (WebCore::measureHyphenWidth):
      (WebCore::textWidth):
      (WebCore::ensureCharacterGetsLineBox):
      (WebCore::tryHyphenating):
      (WebCore::BreakingContext::handleText):
      (WebCore::textBeginsWithBreakablePosition):
      (WebCore::BreakingContext::canBreakAtThisPosition):
      (WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
      (WebCore::checkMidpoints):
      (WebCore::BreakingContext::handleEndOfLine):
      * rendering/line/LineBreaker.cpp: Added.
      (WebCore::LineBreaker::reset):
      (WebCore::LineBreaker::skipTrailingWhitespace):
      (WebCore::LineBreaker::skipLeadingWhitespace):
      * rendering/line/LineBreaker.h: Added.
      (WebCore::LineBreaker::LineBreaker):
      (WebCore::LineBreaker::lineWasHyphenated):
      (WebCore::LineBreaker::positionedObjects):
      (WebCore::LineBreaker::clear):
      * rendering/line/LineInfo.cpp: Added.
      (WebCore::LineInfo::setEmpty):
      * rendering/line/LineInfo.h: Renamed from Source/WebCore/rendering/LineInfo.h.
      (WebCore::LineInfo::LineInfo):
      (WebCore::LineInfo::isFirstLine):
      (WebCore::LineInfo::isLastLine):
      (WebCore::LineInfo::isEmpty):
      (WebCore::LineInfo::previousLineBrokeCleanly):
      (WebCore::LineInfo::floatPaginationStrut):
      (WebCore::LineInfo::runsFromLeadingWhitespace):
      (WebCore::LineInfo::resetRunsFromLeadingWhitespace):
      (WebCore::LineInfo::incrementRunsFromLeadingWhitespace):
      (WebCore::LineInfo::setFirstLine):
      (WebCore::LineInfo::setLastLine):
      (WebCore::LineInfo::setPreviousLineBrokeCleanly):
      (WebCore::LineInfo::setFloatPaginationStrut):
      * rendering/line/LineInlineHeaders.h: Added.
      (WebCore::hasInlineDirectionBordersPaddingOrMargin):
      (WebCore::lineStyle):
      (WebCore::requiresLineBoxForContent):
      (WebCore::shouldCollapseWhiteSpace):
      (WebCore::skipNonBreakingSpace):
      (WebCore::alwaysRequiresLineBox):
      (WebCore::requiresLineBox):
      (WebCore::setStaticPositions):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159354 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      64be122e
    • beidson@apple.com's avatar
      Move execution of IDBTransactionBackendOperations to the IDBServerConnection · 05a35ca3
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124385
      
      Reviewed by Tim Horton.
      
      Source/WebCore:
      
      Each IDBOperation has it’s ::perform() moved to a method on IDBServerConnection.
      This almost removes all knowledge of the backing stores from the front end.
      
      * Modules/indexeddb/IDBDatabaseBackend.cpp:
      (WebCore::IDBDatabaseBackend::clearObjectStore):
      (WebCore::IDBDatabaseBackend::runIntVersionChangeTransaction):
      * Modules/indexeddb/IDBDatabaseBackend.h:
      
      * Modules/indexeddb/IDBObjectStore.cpp:
      (WebCore::IDBObjectStore::clear):
      
      Add methods to reflect each transaction backend operation:
      * Modules/indexeddb/IDBServerConnection.h:
      
      Schedule certain operations with callbacks:
      * Modules/indexeddb/IDBTransactionBackend.cpp:
      (WebCore::IDBTransactionBackend::scheduleVersionChangeOperation):
      (WebCore::IDBTransactionBackend::schedulePutOperation):
      (WebCore::IDBTransactionBackend::scheduleOpenCursorOperation):
      (WebCore::IDBTransactionBackend::scheduleCountOperation):
      (WebCore::IDBTransactionBackend::scheduleDeleteRangeOperation):
      (WebCore::IDBTransactionBackend::scheduleClearObjectStoreOperation):
      * Modules/indexeddb/IDBTransactionBackend.h:
      
      Make each operation’s perform() method defer to the IDBServerConnection (with a callback):
      * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
      (WebCore::CreateObjectStoreOperation::perform):
      (WebCore::CreateIndexOperation::perform):
      (WebCore::CreateIndexAbortOperation::perform):
      (WebCore::DeleteIndexOperation::perform):
      (WebCore::DeleteIndexAbortOperation::perform):
      (WebCore::GetOperation::perform):
      (WebCore::PutOperation::perform):
      (WebCore::SetIndexesReadyOperation::perform):
      (WebCore::OpenCursorOperation::perform):
      (WebCore::CountOperation::perform):
      (WebCore::DeleteRangeOperation::perform):
      (WebCore::ClearObjectStoreOperation::perform):
      (WebCore::DeleteObjectStoreOperation::perform):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::perform):
      (WebCore::CreateObjectStoreAbortOperation::perform):
      
      Add accessors to each operation’s data members so the IDBServerConnection has everything it needs:
      * Modules/indexeddb/IDBTransactionBackendOperations.h:
      (WebCore::CreateObjectStoreOperation::objectStoreMetadata):
      (WebCore::DeleteObjectStoreOperation::objectStoreMetadata):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::create):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::version):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::callbacks):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::databaseCallbacks):
      (WebCore::IDBDatabaseBackend::VersionChangeOperation::VersionChangeOperation):
      (WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
      (WebCore::CreateIndexOperation::objectStoreID):
      (WebCore::CreateIndexOperation::idbIndexMetadata):
      (WebCore::CreateIndexOperation::CreateIndexOperation):
      (WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
      (WebCore::DeleteIndexOperation::objectStoreID):
      (WebCore::DeleteIndexOperation::idbIndexMetadata):
      (WebCore::DeleteIndexOperation::DeleteIndexOperation):
      (WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
      (WebCore::GetOperation::objectStoreID):
      (WebCore::GetOperation::indexID):
      (WebCore::GetOperation::cursorType):
      (WebCore::GetOperation::keyRange):
      (WebCore::GetOperation::callbacks):
      (WebCore::GetOperation::autoIncrement):
      (WebCore::GetOperation::keyPath):
      (WebCore::GetOperation::GetOperation):
      (WebCore::PutOperation::create):
      (WebCore::PutOperation::putMode):
      (WebCore::PutOperation::objectStore):
      (WebCore::PutOperation::key):
      (WebCore::PutOperation::indexIDs):
      (WebCore::PutOperation::indexKeys):
      (WebCore::PutOperation::callbacks):
      (WebCore::PutOperation::value):
      (WebCore::PutOperation::PutOperation):
      (WebCore::OpenCursorOperation::create):
      (WebCore::OpenCursorOperation::objectStoreID):
      (WebCore::OpenCursorOperation::indexID):
      (WebCore::OpenCursorOperation::direction):
      (WebCore::OpenCursorOperation::cursorType):
      (WebCore::OpenCursorOperation::taskType):
      (WebCore::OpenCursorOperation::keyRange):
      (WebCore::OpenCursorOperation::cursorDirection):
      (WebCore::OpenCursorOperation::callbacks):
      (WebCore::OpenCursorOperation::OpenCursorOperation):
      (WebCore::CountOperation::create):
      (WebCore::CountOperation::objectStoreID):
      (WebCore::CountOperation::indexID):
      (WebCore::CountOperation::keyRange):
      (WebCore::CountOperation::callbacks):
      (WebCore::CountOperation::CountOperation):
      (WebCore::DeleteRangeOperation::create):
      (WebCore::DeleteRangeOperation::objectStoreID):
      (WebCore::DeleteRangeOperation::callbacks):
      (WebCore::DeleteRangeOperation::keyRange):
      (WebCore::DeleteRangeOperation::DeleteRangeOperation):
      (WebCore::ClearObjectStoreOperation::create):
      (WebCore::ClearObjectStoreOperation::objectStoreID):
      (WebCore::ClearObjectStoreOperation::callbacks):
      (WebCore::ClearObjectStoreOperation::ClearObjectStoreOperation):
      
      Implement each operation in terms of the appropriate backing store, then perform the callback:
      * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
      (WebCore::IDBServerConnectionLevelDB::createObjectStore):
      (WebCore::IDBServerConnectionLevelDB::createIndex):
      (WebCore::IDBServerConnectionLevelDB::deleteIndex):
      (WebCore::IDBServerConnectionLevelDB::get):
      (WebCore::IDBServerConnectionLevelDB::put):
      (WebCore::IDBServerConnectionLevelDB::openCursor):
      (WebCore::IDBServerConnectionLevelDB::count):
      (WebCore::IDBServerConnectionLevelDB::deleteRange):
      (WebCore::IDBServerConnectionLevelDB::clearObjectStore):
      (WebCore::IDBServerConnectionLevelDB::deleteObjectStore):
      (WebCore::IDBServerConnectionLevelDB::changeDatabaseVersion):
      * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
      
      * WebCore.xcodeproj/project.pbxproj:
      
      Source/WebKit2:
      
      * WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159353 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      05a35ca3
    • timothy_horton@apple.com's avatar
      build.webkit.org/dashboard should provide a way to focus on a subset of bots · a0d14596
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122676
      
      Reviewed by Timothy Hatcher.
      
      Add a small 'hide' button next to every platform logo, and a 'show all'
      button which only appears when at least one platform is hidden. Hidden
      platforms persist using localStorage.
      
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
      (updateHiddenPlatforms):
      (documentReady.unhideButton):
      (documentReady.hideButton):
      (documentReady):
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js: Added.
      (Settings.prototype.setObject):
      (Settings.prototype.getObject):
      (Settings.prototype.addSettingListener):
      (Settings.prototype.fireSettingListener):
      (Settings.prototype.toggleHiddenPlatform):
      (Settings.prototype.clearHiddenPlatforms):
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
      (div.cellButton):
      (div.cellButton.hide):
      (.hidden):
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159352 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a0d14596
    • mhahnenberg@apple.com's avatar
      -dealloc callbacks from wrapped Objective-C objects can happen at bad times · ac6f1fd4
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=123821
      
      Reviewed by Darin Adler.
      
      Currently with the JSC Obj-C API, JS wrappers for client Obj-C objects retain their associated Obj-C 
      object. When they are swept, they release their Obj-C objects which can trigger a call to that 
      object's -dealloc method. These -dealloc methods can then call back into the same VM, which is not 
      allowed during sweeping or VM shutdown.
      
      We can handle this case by creating our own pool of Obj-C objects to be released when it is safe to do so.
      This is accomplished by using DelayedReleaseScope, an RAII-style object that will retain all objects
      that are unsafe to release until the end of the DelayedReleaseScope.
      
      * API/APIShims.h:
      (JSC::APICallbackShim::APICallbackShim):
      (JSC::APICallbackShim::vmForDropAllLocks):
      (JSC::APICallbackShim::execForDropAllLocks):
      * API/JSAPIWrapperObject.mm:
      (JSAPIWrapperObjectHandleOwner::finalize):
      * API/ObjCCallbackFunction.mm:
      (JSC::ObjCCallbackFunctionImpl::destroy):
      (JSC::ObjCCallbackFunction::destroy):
      * API/tests/testapi.mm:
      (-[TinyDOMNode initWithVirtualMachine:]):
      (-[TinyDOMNode dealloc]):
      (-[TinyDOMNode appendChild:]):
      (-[TinyDOMNode removeChildAtIndex:]):
      (-[EvilAllocationObject initWithContext:]):
      (-[EvilAllocationObject dealloc]):
      (-[EvilAllocationObject doEvilThingsWithContext:]):
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * heap/DelayedReleaseScope.h: Added.
      (JSC::DelayedReleaseScope::DelayedReleaseScope):
      (JSC::DelayedReleaseScope::~DelayedReleaseScope):
      (JSC::DelayedReleaseScope::releaseSoon):
      (JSC::MarkedSpace::releaseSoon):
      * heap/Heap.cpp:
      (JSC::Heap::collectAllGarbage):
      * heap/Heap.h:
      (JSC::Heap::releaseSoon):
      * heap/MarkedAllocator.cpp:
      (JSC::MarkedAllocator::allocateSlowCase):
      * heap/MarkedSpace.cpp:
      (JSC::MarkedSpace::MarkedSpace):
      (JSC::MarkedSpace::lastChanceToFinalize):
      (JSC::MarkedSpace::sweep):
      * heap/MarkedSpace.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ac6f1fd4
    • timothy_horton@apple.com's avatar
      Layout Test fast/dom/Geolocation/notimer-after-unload.html is flaky and crashy on Mac WK2 · 53227d60
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124425
      
      * platform/mac-wk2/TestExpectations:
      Mark as crash/pass/fail, since it does all three :(
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      53227d60
    • commit-queue@webkit.org's avatar
      Modifying RTCIceCandidate object construction to match the spec · a1366a09
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124369
      
      Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-11-15
      Reviewed by Eric Carlson.
      
      According to the spec the RTCIceCandidateInit parameter in RTCSessionDescription constructor is optional,
      which must not be nullable, and, if passed, must be a valid Dictionary. If the keys are not present, the string
      object that stores them in the RTCIceCandidate class, must be null in those cases. Also, if a key is present
      and its value is not valid an exception must be raised.
      
      Source/WebCore:
      
      Existing test was updated.
      
      * GNUmakefile.list.am:
      * Modules/mediastream/RTCIceCandidate.cpp:
      (WebCore::RTCIceCandidate::create):
      * Modules/mediastream/RTCIceCandidate.idl:
      * UseJSC.cmake:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/JSRTCIceCandidateCustom.cpp: Added.
      (WebCore::JSRTCIceCandidateConstructor::constructJSRTCIceCandidate):
      
      LayoutTests:
      
      * fast/mediastream/RTCIceCandidate-expected.txt:
      * fast/mediastream/RTCIceCandidate.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a1366a09
    • timothy_horton@apple.com's avatar
      Layout Test webgl/1.0.2/conformance/ogles/GL/tan/tan_001_to_006.html fails on Intel · 38f1f6b2
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124424
      
      * platform/mac/TestExpectations:
      Mark as flaky everywhere, since I have no way to mark it as failing on Intel
      and passing elsewhere.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159348 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      38f1f6b2
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r159337. · 37afb394
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/159337
      https://bugs.webkit.org/show_bug.cgi?id=124423
      
      broke a bunch of fast/regions tests on EFL/GTK (Requested by
      philn on #webkit).
      
      Source/WebCore:
      
      * rendering/InlineFlowBox.cpp:
      (WebCore::InlineFlowBox::setLayoutOverflow):
      (WebCore::InlineFlowBox::setVisualOverflow):
      * rendering/InlineFlowBox.h:
      * rendering/RenderBlock.cpp:
      (WebCore::RenderBlock::addOverflowFromChildren):
      (WebCore::RenderBlock::paint):
      (WebCore::RenderBlock::paintObject):
      (WebCore::RenderBlock::estimateRegionRangeForBoxChild):
      (WebCore::RenderBlock::updateRegionRangeForBoxChild):
      * rendering/RenderBlockFlow.cpp:
      (WebCore::RenderBlockFlow::hasNextPage):
      (WebCore::RenderBlockFlow::relayoutForPagination):
      * rendering/RenderBlockLineLayout.cpp:
      (WebCore::RenderBlockFlow::positionNewFloatOnLine):
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::borderBoxRectInRegion):
      (WebCore::RenderBox::computeRectForRepaint):
      (WebCore::RenderBox::addLayoutOverflow):
      (WebCore::RenderBox::addVisualOverflow):
      (WebCore::RenderBox::isUnsplittableForPagination):
      (WebCore::RenderBox::overflowRectForPaintRejection):
      * rendering/RenderBox.h:
      * rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::paintFillLayerExtended):
      * rendering/RenderBoxModelObject.h:
      * rendering/RenderBoxRegionInfo.h:
      (WebCore::RenderBoxRegionInfo::createOverflow):
      * rendering/RenderFlowThread.cpp:
      (WebCore::RenderFlowThread::paintFlowThreadPortionInRegion):
      (WebCore::RenderFlowThread::hitTestFlowThreadPortionInRegion):
      (WebCore::RenderFlowThread::checkRegionsWithStyling):
      (WebCore::RenderFlowThread::mapFromLocalToFlowThread):
      (WebCore::RenderFlowThread::mapFromFlowThreadToLocal):
      (WebCore::RenderFlowThread::addRegionsOverflowFromChild):
      (WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):
      * rendering/RenderFlowThread.h:
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::updateLayerPositions):
      (WebCore::expandClipRectForDescendantsAndReflection):
      (WebCore::RenderLayer::paintLayer):
      (WebCore::RenderLayer::paintLayerContents):
      (WebCore::RenderLayer::updatePaintingInfoForFragments):
      (WebCore::RenderLayer::paintForegroundForFragments):
      (WebCore::RenderLayer::hitTest):
      (WebCore::RenderLayer::hitTestLayer):
      (WebCore::RenderLayer::calculateClipRects):
      (WebCore::RenderLayer::parentClipRects):
      (WebCore::RenderLayer::calculateRects):
      (WebCore::RenderLayer::intersectsDamageRect):
      (WebCore::RenderLayer::repaintIncludingDescendants):
      * rendering/RenderLayer.h:
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::computeCompositingRequirements):
      * rendering/RenderListItem.cpp:
      (WebCore::RenderListItem::addOverflowFromChildren):
      * rendering/RenderMultiColumnSet.cpp:
      (WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
      (WebCore::RenderMultiColumnSet::repaintFlowThreadContent):
      * rendering/RenderMultiColumnSet.h:
      * rendering/RenderNamedFlowFragment.cpp:
      (WebCore::RenderNamedFlowFragment::createStyle):
      * rendering/RenderNamedFlowFragment.h:
      * rendering/RenderOverflow.h:
      * rendering/RenderRegion.cpp:
      (WebCore::RenderRegion::flowThreadPortionOverflowRect):
      (WebCore::RenderRegion::overflowRectForFlowThreadPortion):
      (WebCore::shouldPaintRegionContentsInPhase):
      (WebCore::RenderRegion::paintObject):
      (WebCore::RenderRegion::hitTestContents):
      (WebCore::RenderRegion::computeOverflowFromFlowThread):
      (WebCore::RenderRegion::repaintFlowThreadContent):
      (WebCore::RenderRegion::repaintFlowThreadContentRectangle):
      (WebCore::RenderRegion::insertedIntoTree):
      (WebCore::RenderRegion::ensureOverflowForBox):
      (WebCore::RenderRegion::rectFlowPortionForBox):
      (WebCore::RenderRegion::addLayoutOverflowForBox):
      (WebCore::RenderRegion::addVisualOverflowForBox):
      (WebCore::RenderRegion::layoutOverflowRectForBox):
      (WebCore::RenderRegion::visualOverflowRectForBox):
      (WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):
      * rendering/RenderRegion.h:
      * rendering/RenderReplaced.cpp:
      (WebCore::RenderReplaced::shouldPaint):
      * rendering/RootInlineBox.cpp:
      (WebCore::RootInlineBox::paint):
      
      LayoutTests:
      
      * fast/regions/bottom-overflow-out-of-first-region-expected.html:
      * fast/regions/bottom-overflow-out-of-first-region.html:
      * fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005-expected.html:
      * fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005.html:
      * fast/regions/element-in-named-flow-absolute-from-fixed-expected.txt:
      * fast/regions/element-in-named-flow-fixed-from-absolute-expected.txt:
      * fast/regions/element-inflow-fixed-from-outflow-static-expected.txt:
      * fast/regions/element-outflow-static-from-inflow-fixed-expected.txt:
      * fast/regions/float-pushed-width-change-2-expected.html:
      * fast/regions/float-pushed-width-change-2.html:
      * fast/regions/float-pushed-width-change-expected.html:
      * fast/regions/float-pushed-width-change.html:
      * fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Removed.
      * fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Removed.
      * fast/regions/layers/regions-promoted-to-layers-expected.txt: Removed.
      * fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Removed.
      * fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Removed.
      * fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Removed.
      * fast/regions/outline-sides-in-region-expected.html:
      * fast/regions/outline-sides-in-region.html:
      * fast/regions/overflow-first-and-last-regions-expected.html: Removed.
      * fast/regions/overflow-first-and-last-regions-in-container-hidden-expected.html: Removed.
      * fast/regions/overflow-first-and-last-regions-in-container-hidden.html: Removed.
      * fast/regions/overflow-first-and-last-regions.html: Removed.
      * fast/regions/overflow-last-region-expected.html: Added.
      * fast/regions/overflow-last-region.html: Added.
      * fast/regions/overflow-nested-regions-expected.html: Removed.
      * fast/regions/overflow-nested-regions.html: Removed.
      * fast/regions/overflow-region-float-expected.html: Removed.
      * fast/regions/overflow-region-float.html: Removed.
      * fast/regions/overflow-region-inline-expected.html: Removed.
      * fast/regions/overflow-region-inline.html: Removed.
      * fast/regions/overflow-region-transform-expected.html: Removed.
      * fast/regions/overflow-region-transform.html: Removed.
      * fast/regions/overflow-scrollable-rotated-fragment-expected.html:
      * fast/regions/overflow-scrollable-rotated-fragment.html:
      * fast/regions/top-overflow-out-of-second-region-expected.html: Removed.
      * fast/regions/top-overflow-out-of-second-region.html:
      * fast/regions/webkit-flow-float-unable-to-push-expected.html:
      * fast/regions/webkit-flow-float-unable-to-push.html:
      * fast/repaint/increasing-region-content-height-expected.txt:
      * fast/repaint/increasing-region-content-height.html:
      * platform/gtk/fast/regions/text-region-split-vertical-rl-expected.txt: Added.
      * platform/mac-wk2/TestExpectations:
      * platform/mac/fast/regions/top-overflow-out-of-second-region-expected.png: Added.
      * platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159347 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37afb394
    • msaboff@apple.com's avatar
      REGRESSION (r158586): callToJavaScript needs to save return PC to Sentinel frame · 1cd33f8a
      msaboff@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124420
      
      Reviewed by Filip Pizlo.
      
      Save the return PC into the sentinel frame.
      
      * jit/JITStubsMSVC64.asm:
      * jit/JITStubsX86.h:
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159346 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1cd33f8a
    • antti@apple.com's avatar
      Hovering over text using simple line path should not cause switch to line boxes · 52e1a9f3
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124418
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Test: fast/text/simple-lines-hover.html
      
      * rendering/RenderText.cpp:
      (WebCore::RenderText::absoluteRects):
      (WebCore::RenderText::absoluteQuadsClippedToEllipsis):
      (WebCore::RenderText::absoluteQuads):
              
          Collect quads and rects directly from simple lines without requiring the line box switch.
      
      * rendering/SimpleLineLayoutFunctions.cpp:
      (WebCore::SimpleLineLayout::collectTextAbsoluteRects):
      (WebCore::SimpleLineLayout::collectTextAbsoluteQuads):
              
          Add these.
      
      * rendering/SimpleLineLayoutFunctions.h:
      * rendering/SimpleLineLayoutResolver.h:
      (WebCore::SimpleLineLayout::RunResolver::Run::start):
      (WebCore::SimpleLineLayout::RunResolver::Run::end):
              
          For future use.
      
      LayoutTests: 
      
      * fast/text/simple-lines-hover-expected.html: Added.
      * fast/text/simple-lines-hover.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159345 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52e1a9f3
    • zoltan@webkit.org's avatar
      [CSS Shapes][CSS Regions] Simplify shape-inside-on-multiple-regions-with-negative-shape-top.html · 17aa01ca
      zoltan@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=123808
      
      Reviewed by Mihnea Ovidenie.
      
      Use a rectangle instead of a complex polygon in the test.
      
      * fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top-expected.html:
      * fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159344 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      17aa01ca