1. 12 Dec, 2013 29 commits
    • lforschler@apple.com's avatar
      Update hardware for Apple bots. · 3625d47c
      lforschler@apple.com authored
              
      Unreviewed.
      
      * BuildSlaveSupport/build.webkit.org-config/config.json:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3625d47c
    • lforschler@apple.com's avatar
      Remove unused Apple Bots. · 413b2695
      lforschler@apple.com authored
              
      Unreviewed.
      
      * BuildSlaveSupport/build.webkit.org-config/config.json:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160510 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      413b2695
    • andersca@apple.com's avatar
      Move MessageSender to Platform/IPC. · 52b0864f
      andersca@apple.com authored
      Rubber-stamped by Andreas Kling.
      
      * Platform/IPC/MessageSender.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageSender.cpp.
      * Platform/IPC/MessageSender.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageSender.h.
      * WebKit2.xcodeproj/project.pbxproj:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160509 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52b0864f
    • andersca@apple.com's avatar
      WebPageProxy should be a MessageSender · 288faf7d
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125654
      
      Reviewed by Sam Weinig.
      
      * Platform/CoreIPC/MessageSender.cpp:
      (CoreIPC::MessageSender::sendMessage):
      * Platform/CoreIPC/MessageSender.h:
      (CoreIPC::MessageSender::send):
      * Shared/ChildProcessProxy.h:
      * Shared/WebConnection.cpp:
      (WebKit::WebConnection::postMessage):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::initializeWebPage):
      (WebKit::WebPageProxy::sendMessage):
      (WebKit::WebPageProxy::messageSenderConnection):
      (WebKit::WebPageProxy::messageSenderDestinationID):
      * UIProcess/WebPageProxy.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      288faf7d
    • thiago.lacerda@openbossa.org's avatar
      committer · 9987625b
      thiago.lacerda@openbossa.org authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160507 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9987625b
    • andersca@apple.com's avatar
      Clean up dictionary handling a little · c3661aa8
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125644
      
      Reviewed by Dan Bernstein.
      
      Add a WKDictionaryCreate function as a first step towards eliminating WKMutableDictionaryRef,
      (in the same way we've eliminated WKMutableArrayRef). Also, rename adopt to create and make it take a Map by value
      so we can use std::move where appropriate.
      
      * Shared/API/c/WKDictionary.cpp:
      (WKDictionaryCreate):
      * Shared/API/c/WKDictionary.h:
      * Shared/Cocoa/WKNSDictionary.mm:
      (-[WKNSDictionary copyWithZone:]):
      * Shared/ImmutableDictionary.cpp:
      (WebKit::ImmutableDictionary::create):
      (WebKit::ImmutableDictionary::ImmutableDictionary):
      * Shared/ImmutableDictionary.h:
      * Shared/MutableDictionary.cpp:
      (WebKit::MutableDictionary::MutableDictionary):
      * Shared/Plugins/Netscape/PluginInformation.cpp:
      (WebKit::createPluginInformationDictionary):
      * Shared/UserData.cpp:
      (WebKit::UserData::transform):
      (WebKit::UserData::decode):
      * Shared/UserMessageCoders.h:
      (WebKit::UserMessageDecoder::baseDecode):
      * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
      (WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy):
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
      * UIProcess/WebDatabaseManagerProxy.cpp:
      (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
      * UIProcess/WebFormClient.cpp:
      (WebKit::WebFormClient::willSubmitForm):
      * UIProcess/WebUIClient.cpp:
      (WebKit::WebUIClient::createNewPage):
      * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
      (WebKit::InjectedBundlePageFormClient::willSendSubmitEvent):
      (WebKit::InjectedBundlePageFormClient::willSubmitForm):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160504 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c3661aa8
    • ap@apple.com's avatar
      Add support for RSAES-PKCS1-v1_5 · d6fcbe43
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125647
      
      Build fix.
      
      * crypto/CommonCryptoUtilities.h: Declare a newly used private constant.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160503 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d6fcbe43
    • ap@apple.com's avatar
      Add support for RSAES-PKCS1-v1_5 · d79ec0a0
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125647
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Tests: crypto/subtle/rsaes-pkcs1-v1_5-decrypt.html
             crypto/subtle/rsaes-pkcs1-v1_5-wrap-unwrap-aes.html
      
      * crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
      * crypto/algorithms/CryptoAlgorithmAES_KW.h:
      Removed meaningless parameters arguments from private functions. The base arguments
      class is always empty.
      
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/JSCryptoAlgorithmDictionary.cpp:
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
      * bindings/js/JSCryptoKeySerializationJWK.cpp:
      (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
      (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
      (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
      * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp: Added.
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::CryptoAlgorithmRSAES_PKCS1_v1_5):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::~CryptoAlgorithmRSAES_PKCS1_v1_5):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::create):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::identifier):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::keyAlgorithmMatches):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::encrypt):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::decrypt):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::generateKey):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::importKey):
      * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h: Added.
      * crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp: Added.
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
      (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
      * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
      (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
      Added support for this algorithm.
      
      LayoutTests: 
      
      * crypto/subtle/rsaes-pkcs1-v1_5-decrypt-expected.txt: Added.
      * crypto/subtle/rsaes-pkcs1-v1_5-decrypt.html: Added.
      * crypto/subtle/rsaes-pkcs1-v1_5-wrap-unwrap-aes-expected.txt: Added.
      * crypto/subtle/rsaes-pkcs1-v1_5-wrap-unwrap-aes.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160502 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d79ec0a0
    • commit-queue@webkit.org's avatar
      Web Inspector: ES6: JavaScript syntax highlighting and recognition of for..of · c9ff3b34
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=122868
      
      Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-12
      Reviewed by Timothy Hatcher.
      
      Update to CodeMirror 3.20 including javascript ES6 updates.
      
      * Tools/PrettyPrinting/codemirror.css:
      * Tools/PrettyPrinting/codemirror.js: Minor local change due to error from jsmin.py
      * Tools/PrettyPrinting/css.js:
      * Tools/PrettyPrinting/javascript.js:
      * UserInterface/External/CodeMirror/codemirror.css:
      * UserInterface/External/CodeMirror/codemirror.js: Minor local change due to error from jsmin.py
      * UserInterface/External/CodeMirror/coffeescript.js:
      * UserInterface/External/CodeMirror/css.js:
      * UserInterface/External/CodeMirror/htmlmixed.js:
      * UserInterface/External/CodeMirror/javascript.js:
      * UserInterface/External/CodeMirror/less.js:
      * UserInterface/External/CodeMirror/matchbrackets.js:
      * UserInterface/External/CodeMirror/placeholder.js:
      * UserInterface/External/CodeMirror/runmode.js:
      * UserInterface/External/CodeMirror/searchcursor.js:
      * UserInterface/External/CodeMirror/sql.js:
      * UserInterface/External/CodeMirror/xml.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160500 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9ff3b34
    • akling@apple.com's avatar
      [Mac] Stop not caching HTTP resources with "Vary" header in response. · 1e9e7366
      akling@apple.com authored
      <https://webkit.org/b/125483>
      <rdar://problem/11781097>
      
      Remove the workaround preventing resources with the "Vary" header
      from going into cache, as the CFNetwork cache has supported this
      for quite a while now.
      
      31.5 MB progression on Membuster3, because we can now mmap those
      resources from disk once they are in the cache.
      
      We keep the workaround on PLATFORM(WIN) for now.
      
      Reviewed by Antti Koivisto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160498 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1e9e7366
    • ap@apple.com's avatar
      Source/WebCore: Replace uses of WTF::BitArray with std::bitset · 5aec375d
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125642
      
      Patch by Sam Weinig <sam@webkit.org> on 2013-12-12
      Reviewed by Anders Carlsson.
      
      * css/CSSParser.cpp:
      (WebCore::filterProperties):
      (WebCore::CSSParser::createStyleProperties):
      * css/StyleProperties.cpp:
      (WebCore::StyleProperties::asText):
      
      LayoutTests: Public key in a generated KeyPair should always be extractable
      https://bugs.webkit.org/show_bug.cgi?id=125643
      
      Reviewed by Sam Weinig.
      
      * crypto/subtle/rsa-oaep-generate-non-extractable-key-expected.txt: Added.
      * crypto/subtle/rsa-oaep-generate-non-extractable-key.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160496 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5aec375d
    • mitz@apple.com's avatar
      [Cocoa] Navigation action information for policy decisions is missing the original request · 3e5d6e13
      mitz@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125612
      
      Reviewed by Anders Carlsson.
      
      * Platform/CoreIPC/HandleMessage.h:
      (CoreIPC::callMemberFunction): Added template with additional message parameter.
      * UIProcess/API/C/WKPagePolicyClientInternal.h: Added. Defines a new version of the client
      interface with a new version of the policy decision callback.
      * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
      (setUpPagePolicyClient): Use the new internal version of the client. Pass the original
      request in the action information dictionary under a new key.
      * UIProcess/API/Cocoa/WKBrowsingContextPolicyDelegate.h: Declared new action information
      key.
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::decidePolicyForNavigationAction): Added originalRequest parameter,
      which is passed to the policy client.
      * UIProcess/WebPageProxy.h:
      * UIProcess/WebPageProxy.messages.in: Added originalRequest parameter in
      DecidePolicyForNavigationAction.
      * UIProcess/WebPolicyClient.cpp:
      (WebKit::WebPolicyClient::decidePolicyForNavigationAction): Pass the original request to
      the client.
      * UIProcess/WebPolicyClient.h:
      * WebKit2.xcodeproj/project.pbxproj: Added reference to new file.
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Send the original
      request from the navigation action to the UI process.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160495 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3e5d6e13
    • joepeck@webkit.org's avatar
      Test new JSContext name APIs · b4ba4129
      joepeck@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125607
      
      Source/JavaScriptCore:
      
      Reviewed by Darin Adler.
      
      * API/JSContext.h:
      * API/JSContextRef.h:
      Fix whitespace issues.
      
      * API/tests/testapi.c:
      (globalContextNameTest):
      (main):
      * API/tests/testapi.mm:
      Add tests for JSContext set/get name APIs.
      
      Tools:
      
      * Scripts/run-javascriptcore-tests:
      Remove trailing whitespace.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160494 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b4ba4129
    • fpizlo@apple.com's avatar
      ARM64: Hang running pdfjs test, suspect DFG generated code for "in" · b7689f02
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124727
      <rdar://problem/15566923>
      
      Reviewed by Michael Saboff.
              
      Get rid of In's hackish use of StructureStubInfo. Previously it was using hotPathBegin,
      and it was the only IC that used that field, which was wasteful. Moreover, it used it
      to store two separate locations: the label for patching the jump and the label right
      after the jump. The code was relying on those two being the same label, which is true
      on X86 and some other platforms, but it isn't true on ARM64.
              
      This gets rid of hotPathBegin and makes In express those two locations as offsets from
      the callReturnLocation, which is analogous to what the other IC's do.
              
      This fixes a bug where any successful In patching would result in a trivially infinite
      loop - and hence a hang - on ARM64.
      
      * bytecode/StructureStubInfo.h:
      * dfg/DFGJITCompiler.cpp:
      (JSC::DFG::JITCompiler::link):
      * dfg/DFGJITCompiler.h:
      (JSC::DFG::InRecord::InRecord):
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::compileIn):
      * jit/JITInlineCacheGenerator.cpp:
      (JSC::JITByIdGenerator::finalize):
      * jit/Repatch.cpp:
      (JSC::replaceWithJump):
      (JSC::patchJumpToGetByIdStub):
      (JSC::tryCachePutByID):
      (JSC::tryBuildPutByIdList):
      (JSC::tryRepatchIn):
      (JSC::resetGetByID):
      (JSC::resetPutByID):
      (JSC::resetIn):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160493 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b7689f02
    • weinig@apple.com's avatar
      Replace uses of WTF::BitArray with std::bitset · 05c25220
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125642
      
      Reviewed by Anders Carlsson.
      
      ../WebCore: 
      
      * css/CSSParser.cpp:
      (WebCore::filterProperties):
      (WebCore::CSSParser::createStyleProperties):
      * css/StyleProperties.cpp:
      (WebCore::StyleProperties::asText):
      
      ../WTF: 
      
      * GNUmakefile.list.am:
      * WTF.vcxproj/WTF.vcxproj:
      * WTF.vcxproj/WTF.vcxproj.filters:
      * WTF.xcodeproj/project.pbxproj:
      * wtf/BitArray.h: Removed.
      * wtf/CMakeLists.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      05c25220
    • ap@apple.com's avatar
      Make algorithm.name return registered name, not normalized one · 8199d8e9
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125641
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Currently, WebCrypto editor's draft stipulates that algorithm name is lowercased
      as part of normalization.
      
      But it makes little sense to register algorithms as mixed (mostly upper) case, yet
      return the name lowercased. Other implementations don't bother respecting this,
      and signs are that the spec will change.
      
      I'd like to match other implementations here, because sticking to the spec only
      makes us fail 3rd party test suites for no good reason.
      
      Updated many existing tests.
      
      * crypto/CryptoAlgorithmRegistry.cpp:
      (WebCore::CryptoAlgorithmRegistry::getIdentifierForName):
      (WebCore::CryptoAlgorithmRegistry::registerAlgorithm):
      * crypto/CryptoAlgorithmRegistry.h:
      * crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
      * crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
      * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
      * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
      * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA1.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA224.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA256.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA384.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA512.cpp:
      
      LayoutTests: 
      
      * crypto/subtle/aes-cbc-192-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-256-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-encrypt-decrypt-with-padding-expected.txt:
      * crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
      * crypto/subtle/aes-cbc-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-generate-key-expected.txt:
      * crypto/subtle/aes-cbc-generate-key.html:
      * crypto/subtle/aes-cbc-import-jwk-expected.txt:
      * crypto/subtle/aes-cbc-import-jwk.html:
      * crypto/subtle/aes-cbc-invalid-length-expected.txt:
      * crypto/subtle/aes-cbc-invalid-length.html:
      * crypto/subtle/aes-cbc-unwrap-failure-expected.txt:
      * crypto/subtle/aes-cbc-unwrap-failure.html:
      * crypto/subtle/aes-cbc-unwrap-rsa-expected.txt:
      * crypto/subtle/aes-cbc-unwrap-rsa.html:
      * crypto/subtle/aes-cbc-wrap-rsa-expected.txt:
      * crypto/subtle/aes-cbc-wrap-rsa-non-extractable-expected.txt:
      * crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html:
      * crypto/subtle/aes-cbc-wrap-rsa.html:
      * crypto/subtle/aes-kw-key-manipulation-expected.txt:
      * crypto/subtle/aes-kw-key-manipulation.html:
      * crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt:
      * crypto/subtle/aes-kw-wrap-unwrap-aes.html:
      * crypto/subtle/aes-postMessage-expected.txt:
      * crypto/subtle/aes-postMessage.html:
      * crypto/subtle/hmac-generate-key-expected.txt:
      * crypto/subtle/hmac-generate-key.html:
      * crypto/subtle/hmac-import-jwk-expected.txt:
      * crypto/subtle/hmac-import-jwk.html:
      * crypto/subtle/hmac-postMessage-expected.txt:
      * crypto/subtle/hmac-postMessage.html:
      * crypto/subtle/hmac-sign-verify-empty-key-expected.txt:
      * crypto/subtle/hmac-sign-verify-empty-key.html:
      * crypto/subtle/hmac-sign-verify-expected.txt:
      * crypto/subtle/hmac-sign-verify.html:
      * crypto/subtle/postMessage-worker-expected.txt:
      * crypto/subtle/postMessage-worker.html:
      * crypto/subtle/resources/postMessage-worker.js:
      * crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
      * crypto/subtle/rsa-oaep-key-manipulation.html:
      * crypto/subtle/rsa-oaep-wrap-unwrap-aes-expected.txt:
      * crypto/subtle/rsa-oaep-wrap-unwrap-aes.html:
      * crypto/subtle/rsa-postMessage-expected.txt:
      * crypto/subtle/rsa-postMessage.html:
      * crypto/subtle/rsassa-pkcs1-v1_5-generate-key-expected.txt:
      * crypto/subtle/rsassa-pkcs1-v1_5-generate-key.html:
      * crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-expected.txt:
      * crypto/subtle/rsassa-pkcs1-v1_5-import-jwk.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160491 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8199d8e9
    • zandobersek@gmail.com's avatar
      [Autotools] Prepend the WebCore layer archives' names with 'lib' · 0d422e8f
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125627
      
      Reviewed by Martin Robinson.
      
      Source/WebKit2: 
      
      * GNUmakefile.am: Libtool can complain about the WebCore layer archives not being prepended with 'lib'
      when they are used during linking, so the prefix is now added to avoid such issues.
      
      Tools: 
      
      * TestWebKitAPI/GNUmakefile.am: Libtool can complain about the WebCore layer archives not being prepended
      with 'lib' when they are used during linking, so the prefix is now added to avoid such issues.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160490 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0d422e8f
    • m.pakula@samsung.com's avatar
      Unreviewed EFL gardening · 755a020d
      m.pakula@samsung.com authored
      Rebaseline fast/table/empty-cells.html after r160410.
      
      * platform/efl/fast/table/empty-cells-expected.png:
      * platform/efl/fast/table/empty-cells-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160489 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      755a020d
    • m.pakula@samsung.com's avatar
      Unreviewed EFL gardening · 2775d839
      m.pakula@samsung.com authored
      Add test expectations for failing compositing tests.
      
      * platform/efl-wk2/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160488 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2775d839
    • ossy@webkit.org's avatar
      Move CertificateInfo to WebCore · 84c850db
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124720
      
      Reviewed by Darin Adler.
      
      Based on the patch by Kwang Yul Seo <skyul@company100.net>
      
      Source/WebCore:
      
      * GNUmakefile.list.am:
      * PlatformEfl.cmake:
      * PlatformGTK.cmake:
      * WebCore.exp.in:
      * WebCore.xcodeproj/project.pbxproj:
      * platform/network/mac/CertificateInfo.h: Renamed from Source/WebKit2/Shared/mac/CertificateInfo.h.
      (WebCore::CertificateInfo::setCertificateChain): Added, because WebCoreArgumentCoders needs it.
      * platform/network/mac/CertificateInfoMac.mm: Renamed from Source/WebKit2/Shared/mac/CertificateInfo.mm.
      (WebCore::CertificateInfo::CertificateInfo): Moved encode() and decode() to WebCoreArgumentCodersMac.mm.
      * platform/network/soup/CertificateInfo.cpp: Copied from Source/WebKit2/Shared/WebCertificateInfo.h.
      (WebCore::CertificateInfo::CertificateInfo): Moved encode() and decode() to WebCoreArgumentCodersSoup.cpp.
      * platform/network/soup/CertificateInfo.h: Renamed from Source/WebKit2/Shared/soup/CertificateInfo.h.
      (WebCore::CertificateInfo::setCertificate): Added, because WebCoreArgumentCoders needs it.
      (WebCore::CertificateInfo::setTLSErrors): Added, because WebCoreArgumentCoders needs it.
      
      Source/WebKit2:
      
      * GNUmakefile.list.am:
      * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
      * NetworkProcess/NetworkProcess.h:
      * NetworkProcess/NetworkProcess.messages.in:
      * NetworkProcess/NetworkResourceLoader.cpp:
      * NetworkProcess/mac/NetworkProcessMac.mm:
      * PlatformEfl.cmake:
      * PlatformGTK.cmake:
      * Shared/API/c/mac/WKCertificateInfoMac.mm:
      * Shared/Authentication/AuthenticationManager.h:
      * Shared/Authentication/AuthenticationManager.messages.in:
      * Shared/Authentication/mac/AuthenticationManager.mac.mm:
      * Shared/UserMessageCoders.h:
      (WebKit::UserMessageDecoder::baseDecode):
      * Shared/WebCertificateInfo.h:
      (WebKit::WebCertificateInfo::create):
      (WebKit::WebCertificateInfo::certificateInfo):
      * Shared/WebCoreArgumentCoders.cpp:
      * Shared/WebCoreArgumentCoders.h:
      * Shared/mac/WebCoreArgumentCodersMac.mm:
      (CoreIPC::ArgumentCoder<CertificateInfo>::encode):
      (CoreIPC::ArgumentCoder<CertificateInfo>::decode):
      * Shared/soup/CertificateInfo.cpp: Removed.
      * Shared/soup/WebCoreArgumentCodersSoup.cpp:
      (CoreIPC::ArgumentCoder<CertificateInfo>::encode):
      (CoreIPC::ArgumentCoder<CertificateInfo>::decode):
      * UIProcess/API/gtk/WebKitCertificateInfoPrivate.h:
      * UIProcess/API/gtk/WebKitWebView.cpp:
      (webkit_web_view_get_tls_info):
      * UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
      (WebKit::AuthenticationChallengeProxy::useCredential):
      * UIProcess/WebFrameProxy.cpp:
      (WebKit::WebFrameProxy::didCommitLoad):
      * UIProcess/WebFrameProxy.h:
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::didCommitLoadForFrame):
      * UIProcess/WebPageProxy.h:
      * UIProcess/WebPageProxy.messages.in:
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/Network/WebResourceLoader.cpp:
      * WebProcess/Network/WebResourceLoader.h:
      * WebProcess/Network/WebResourceLoader.messages.in:
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      * WebProcess/WebProcess.h:
      * WebProcess/WebProcess.messages.in:
      * WebProcess/soup/WebProcessSoup.cpp:
      (WebKit::WebProcess::allowSpecificHTTPSCertificateForHost):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160487 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      84c850db
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160446. · dedc785f
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160446
      https://bugs.webkit.org/show_bug.cgi?id=125630
      
      The upower-glib-based implementation is using API that was
      recently removed (Requested by zdobersek1 on #webkit).
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      
      LayoutTests:
      
      * platform/gtk/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160486 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dedc785f
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160417. · 3579e7c2
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160417
      https://bugs.webkit.org/show_bug.cgi?id=125629
      
      The patch is causing crashes (Requested by zdobersek1 on
      #webkit).
      
      Source/WebCore:
      
      * accessibility/AXObjectCache.cpp:
      (WebCore::AXObjectCache::~AXObjectCache):
      (WebCore::AXObjectCache::remove):
      * accessibility/AXObjectCache.h:
      (WebCore::AXObjectCache::detachWrapper):
      * accessibility/atk/AXObjectCacheAtk.cpp:
      (WebCore::AXObjectCache::detachWrapper):
      (WebCore::AXObjectCache::attachWrapper):
      (WebCore::AXObjectCache::postPlatformNotification):
      * accessibility/ios/AXObjectCacheIOS.mm:
      (WebCore::AXObjectCache::detachWrapper):
      * accessibility/mac/AXObjectCacheMac.mm:
      (WebCore::AXObjectCache::detachWrapper):
      * accessibility/win/AXObjectCacheWin.cpp:
      (WebCore::AXObjectCache::detachWrapper):
      
      Tools:
      
      * DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:
      (axObjectEventListener):
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
      
      LayoutTests:
      
      * accessibility/children-changed-sends-notification-expected.txt: Removed.
      * accessibility/children-changed-sends-notification.html: Removed.
      * accessibility/loading-iframe-sends-notification.html:
      * platform/mac/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3579e7c2
    • mrobinson@webkit.org's avatar
      Remove a few more guards mistakenly added in r160367 · b6eef931
      mrobinson@webkit.org authored
      Reviewed by Carlos Garcia Campos
      
      r160367 was too liberal in hiding APIs from the GObject DOM bindings.
      We should expose the BatteryManager and the text and audio tracks.
      
      * Modules/battery/BatteryManager.idl:
      * html/HTMLMediaElement.idl:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160484 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b6eef931
    • graouts@apple.com's avatar
      Web Inspector: allow editing of colors in CSS resources · ffc95ad7
      graouts@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124364
      
      Reviewed by Timothy Hatcher.
      
      Identify colors in CSS and HTML resources so that hovering these colors shows a HoverMenu
      allowing a ColorPicker hosted in a Popover to be shown to edit the hovered color.
      
      * UserInterface/CSSStyleDeclarationTextEditor.js:
      (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):
      Remove the code that goes through the lines of the CodeMirror editor to look for
      color strings and replace it with a call to the .createColorMarkers() CodeMirror
      extension in which the code was refactored. The callback passed to
      .createColorMarkers() handles the CSSStyleDeclarationTextEditor-specific creation
      of color swatches to show the popover, keeping the existing behavior of the Styles
      sidebar panel.
      
      * UserInterface/CodeMirrorAdditions.js:
      Refactor existing code into two new CodeMirror extensions: .boundsForRange(), which
      was previously defined on the CodeMirrorTokenTrackingController but was also needed
      in the new CodeMirrorColorEditingController, and .createColorMarkers(), discussed above.
      
      * UserInterface/CodeMirrorColorEditingController.js: Added.
      (WebInspector.CodeMirrorColorEditingController):
      New class used by SourceCodeTextEditor to coordinate the editing of a color in a CodeMirror
      TextMarker by a ColorPicker hosted in a Popover shown by the activation of a HoverMenu. This
      controller automatically gets the color set by the user using the ColorPicker and updates
      the CodeMirror text editor with the new value. When the user presses the Esc. key while the
      popover is shown, it's automatically dismissed and the original color is reset in the editor.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.get marker):
      (WebInspector.CodeMirrorColorEditingController.prototype.get range):
      (WebInspector.CodeMirrorColorEditingController.prototype.get delegate):
      (WebInspector.CodeMirrorColorEditingController.prototype.set delegate):
      Getters and setters for public properties.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.get color):
      (WebInspector.CodeMirrorColorEditingController.prototype.set color):
      Get and set the color for the edited color marker, replacing the text in the marker's range
      upon setting.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.presentHoverMenu):
      Public API allowing for a HoverMenu to be shown around the bounds of the TextMarker passed
      in the constructor. This method is called from SourceCodeTextEditor when the
      CodeMirrorTokenTrackingController identifies that a token that is part of a TextMarker is
      hovered and that token is a color.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.dismissHoverMenu):
      Public API allowing for the HoverMenu to be dismissed. This method is called when the
      CodeMirrorTokenTrackingController identifies that its "hoveredMarker" is no longer being
      hovered as well as when we identify that editing of the color has completed.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.handleEvent):
      Event handler for the "keydown" event that are being listened to when the HoverMenu
      is activated such that the Esc. key can be used to dimiss the popover and reset the
      original color before any edits.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.hoverMenuButtonWasPressed):
      Implementation of the HoverMenu delegation method used to show a Popover containing a
      ColorPicker upon clicking on the color wheel attached to the HoverMenu. We also remember
      the color set on the marker so that it may be restored when Esc. is pressed and used to
      set the original state of the ColorPicker. The delegation method
      colorEditingControllerDidStartEditing() is also called at this point, which the
      SourceCodeTextEditor implements.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.didDismissPopover):
      Implementation of the Popover delegation method used to identify that color editing has
      completed. The delegation method colorEditingControllerDidFinishEditing() is called
      at this point, which the SourceCodeTextEditor implements.
      
      (WebInspector.CodeMirrorColorEditingController.prototype._colorPickerColorChanged):
      Apply the color set in the color picker to the CodeMirror text editor.
      
      * UserInterface/CodeMirrorTokenTrackingController.js:
      Add two new modes to CodeMirrorTokenTrackingController. The first mode is "None" and is
      the default, incurring no specific token handling behavior. The second mode is "MarkedTokens"
      which identifies hover of a token contained in a CodeMirror TextMarker range. The new
      "MarkedTokens" mode is used by SourceCodeTextEditor to identify when a marked color is being
      hovered to display a HoverMenu.
      
      (WebInspector.CodeMirrorTokenTrackingController):
      (WebInspector.CodeMirrorTokenTrackingController.prototype.set mode):
      Make "None" the new default mode for CodeMirrorTokenTrackingController.
      
      (WebInspector.CodeMirrorTokenTrackingController.prototype.get hoveredMarker):
      (WebInspector.CodeMirrorTokenTrackingController.prototype.set hoveredMarker):
      (WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
      Check, when we have a "hoveredMarker" set on the CodeMirrorTokenTrackingController,
      whether the "hoveredMarker" is still being hovered when there is no token at the current
      mouse position. We can then determine when we're mousing out of the "hoveredMarker" and
      notify the delegate via the new tokenTrackingControllerMouseOutOfHoveredMarker delegate
      method. The SourceCodeTextEditor uses this method to dismiss its CodeMirrorColorEditingController.
      
      (WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken):
      Add support for the new "MarkedTokens" mode.
      
      (WebInspector.CodeMirrorTokenTrackingController.prototype._processMarkedToken):
      For the moment, use the same behavior as the existing "MarkedTokens" mode.
      
      * UserInterface/Color.js:
      (WebInspector.Color):
      Add a new "valid" property to identify whether a color has any invalid (NaN) component. This property
      is used by SourceCodeTextEditor to establish whether a hovered color marker is indeed set to a
      valid color still.
      
      (WebInspector.Color.prototype.copy):
      New method to create an exact copy of a Color instance, used by CodeMirrorColorEditingController
      to duplicate the edited color in case we need to revert it.
      
      * UserInterface/HoverMenu.js:
      (WebInspector.HoverMenu.prototype._handleClickEvent):
      Rename hoverMenuWasActivated to hoverMenuButtonWasPressed per review feedback.
      
      * UserInterface/Images/ColorIcon.png: Added.
      * UserInterface/Images/ColorIcon@2x.png: Added.
      New color wheel icon used to customize the HoverMenu shown by a CodeMirrorColorEditingController.
      
      * UserInterface/Main.html:
      Link to the new CodeMirrorColorEditingController.js file.
      
      * UserInterface/SourceCodeTextEditor.css:
      (.hover-menu.color):
      (.hover-menu.color > img):
      Customize the HoverMenu shown by a CodeMirrorColorEditingController to use the new ColorIcon asset.
      
      * UserInterface/SourceCodeTextEditor.js:
      (WebInspector.SourceCodeTextEditor):
      Add a new "_ignoreContentDidChange" ivar that increments and decrements to track when handling
      of CodeMirror content changes should be disabled.
      
      (WebInspector.SourceCodeTextEditor.prototype.close):
      Adopt the new ._updateTokenTrackingControllerState() method to update the state of the
      CodeMirrorTokenTrackingController.
      
      (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
      Override the new TextEditor public API called when content in the CodeMirror text editor is changed.
      We use this method to process any newly added line to create any newly added color marker.
      
      (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate):
      (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
      (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
      (WebInspector.SourceCodeTextEditor.prototype._sourceCodeSourceMapAdded):
      Adopt the new ._updateTokenTrackingControllerState() method to update the state of the
      CodeMirrorTokenTrackingController.
      
      (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
      New method acting as the only point where we check the state of the text editor and set the right
      mode and settings on the CodeMirrorTokenTrackingController, including setting the new "MarkedTokens"
      mode when we have color markers, as determined by ._hasColorMarkers().
      
      (WebInspector.SourceCodeTextEditor.prototype._hasColorMarkers):
      Check whether any of the TextMarkers set on the CodeMirror text editor were created for a color.
      
      (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
      Check the CodeMirrorTokenTrackingController mode rather than the removed "_jumpToSymbolTrackingModeEnabled"
      ivar to identify we're in the "NonSymbolTokens" mode.
      
      (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate):
      Refactor method to use the CodeMirrorTokenTrackingController mode to branch into mode-specific code
      and add a new branch for the new "MarkedTokens" mode where we check if the newly hovered token
      is part of a color TextMarker range.
      
      (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerMouseOutOfHoveredMarker):
      Implement this new CodeMirrorTokenTrackingController delegation method to dismiss the
      CodeMirrorColorEditingController as we identify we're no longer hovering over the TextMarker
      for which the CodeMirrorColorEditingController was created.
      
      (WebInspector.SourceCodeTextEditor.prototype._showPopover):
      Adopt the new TextEditor boundsForRange() method.
      
      (WebInspector.SourceCodeTextEditor.prototype._updateColorMarkers):
      Harness the new TextEditor createColorMarkers() method to create new TextMarkers for the provided
      line, or the entire text editor content if none provided. We then immediately call _updateTokenTrackingControllerState()
      so that the new "MarkedTokens" mode is entered in case color TextMarkers were created for the first
      time for this text editor.
      
      (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedMarkedExpression):
      Called when we've identified the CodeMirrorTokenTrackingController highlighted a TextMarker. We check
      if any of the hovered TextMarkers are for a color, and in this case create a CodeMirrorColorEditingController
      to coordinate the display of a ColorPicker in a Popover to edit the hovered color token. We also check
      whether the hovered marker still contains a valid color, clearing the marker in case it was edited to
      no longer contain a color.
      
      (WebInspector.SourceCodeTextEditor.prototype._dismissCodeMirrorColorEditingController):
      Used to dismiss the CodeMirrorColorEditingController, if previously presented, and reset some internal state.
      
      (WebInspector.SourceCodeTextEditor.prototype.colorEditingControllerDidStartEditing):
      Implement this CodeMirrorColorEditingController delegation method to temporarily disable the
      CodeMirrorTokenTrackingController while we edit the color with the ColorPicker, remove
      the TextMarker for the edited color and instruct that content changes should be ignored
      such that we act on the complete set of color edits upon completion.
      
      (WebInspector.SourceCodeTextEditor.prototype.colorEditingControllerDidFinishEditing):
      Update color markers for the edited line such that any color edits are correctly updated for
      the future and so that, as a side-effect, the CodeMirrorColorEditingController is reset to the
      appropriate mode depending on whether color TextMarkers are indeed available, resetting states
      that may have been altered by colorEditingControllerDidStartEditing().
      
      * UserInterface/TextEditor.js:
      (WebInspector.TextEditor.prototype.contentDidChange):
      New public method meant to be overriden by subclasses, added for the use of SourceCodeTextEditor, exposing
      the list of TextRanges affected by the content change, both in the context of the old content and new content.
      
      (WebInspector.TextEditor.prototype.boundsForRange):
      (WebInspector.TextEditor.prototype.get markers):
      (WebInspector.TextEditor.prototype.findMarkersAtPosition):
      (WebInspector.TextEditor.prototype.createColorMarkers):
      (WebInspector.TextEditor.prototype.colorEditingControllerForMarker):
      New public methods calling into the CodeMirror private ivar for the benefit of SourceCodeTextEditor.
      
      (WebInspector.TextEditor.prototype._contentChanged):
      Call the new contentDidChange() method.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ffc95ad7
    • zandobersek@gmail.com's avatar
      Use of ar T option not supported by older binutils · af1524c4
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=118732
      
      Reviewed by Gustavo Noronha Silva.
      
      .: 
      
      * Source/autotools/SetupLibtool.m4: Make the AR_FLAGS value usable inside makefiles as an Automake variable.
      
      Source/WebKit2: 
      
      * GNUmakefile.am: To support non-thin archives when generating the WebCoreLayerGtk2 archive,
      switch to using the AR_FLAGS variable (which can be overridden) for providing the ar flags for the
      new archive. Non-thin archives also pose the problem as their members are only noted by the basename
      of the member's object file, and not the full path to it. To work around that, all the object files
      under the build directory are listed by their relative paths. The members of various archives then have
      the basenames of their paths grepped against that list, with the found path correlating to the member
      finally added as the new member of the WebCoreLayerGtk2 archive.
      
      Tools: 
      
      * TestWebKitAPI/GNUmakefile.am: To support non-thin archives when generating the WebCoreLayer archive,
      switch to using the AR_FLAGS variable (which can be overridden) for providing the ar flags for the
      new archive. Non-thin archives also pose the problem as their members are only noted by the basename
      of the member's object file, and not the full path to it. To work around that, all the object files
      under the build directory are listed by their relative paths. The members of various archives then have
      the basenames of their paths grepped against that list, with the found path correlating to the member
      finally added as the new member of the WebCoreLayer archive.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af1524c4
    • carlosgc@webkit.org's avatar
      [GTK] WebProcess tests are failing with newer glib · 4d1958ec
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125621
      
      Reviewed by Martin Robinson.
      
      Newer versions of glib unset the DISPLAY env variable in
      g_test_dbus_up(). The WebProcess needs the DISPLAY variable to
      work, and it's important to keep its value when running the tests
      under Xvfb.
      
      * UIProcess/API/gtk/tests/WebProcessTestRunner.cpp:
      (WebProcessTestRunner::WebProcessTestRunner): Restore the DISPLAY
      env variable after calling g_test_dbus_up().
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d1958ec
    • carlosgc@webkit.org's avatar
      [GTK] Make sure unit tests don't use GVFS and dconf · 57d8a5b2
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125620
      
      Reviewed by Martin Robinson.
      
      They should use the local vfs and the gsettings memory backend.
      
      * UIProcess/API/gtk/tests/TestMain.cpp:
      (main):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57d8a5b2
    • darin@apple.com's avatar
      StylePendingImage needs to correctly manage the CSSValue pointer lifetime · 6b9561a0
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125468
      
      Reviewed by Andreas Kling.
      
      Source/WebCore:
      
      Test: fast/css/pending-image-crash.xhtml
      
      Disconnect the reference counted StylePendingImage from the CSSValue that owns
      it when it's not needed any more, otherwise we could end up using a pointer
      that might no longer be valid.
      
      * css/CSSCursorImageValue.cpp:
      (WebCore::CSSCursorImageValue::detachPendingImage): Added. Calls detachFromCSSValue
      on the current image if it is a StylePendingImage.
      (WebCore::CSSCursorImageValue::~CSSCursorImageValue): Call detachPendingImage.
      (WebCore::CSSCursorImageValue::cachedImage): Call detachPendingImage before changing
      m_image to a new value.
      (WebCore::CSSCursorImageValue::clearCachedImage): Ditto.
      * css/CSSCursorImageValue.h: Added detachPendingImage.
      
      * css/CSSImageSetValue.cpp:
      (WebCore::CSSImageSetValue::detachPendingImage): Added. Calls detachFromCSSValue
      on the current image set if it is a StylePendingImage.
      (WebCore::CSSImageSetValue::~CSSImageSetValue): Call detachPendingImage.
      (WebCore::CSSImageSetValue::cachedImageSet): Call detachPendingImage before changing
      m_imageSet to a new value.
      * css/CSSImageSetValue.h: Added detachPendingImage.
      
      * css/CSSImageValue.cpp:
      (WebCore::CSSImageValue::detachPendingImage): Added. Calls detachFromCSSValue on the
      current image if it is a StylePendingImage.
      (WebCore::CSSImageValue::~CSSImageValue): Call detachPendingImage.
      (WebCore::CSSImageValue::cachedImage): Call detachPendingImage before changing m_image
      to a new value.
      * css/CSSImageValue.h: Added detachPendingImage.
      
      * rendering/style/StylePendingImage.h:
      (WebCore::StylePendingImage::cssImageValue): Added a null check.
      (WebCore::StylePendingImage::cssImageGeneratorValue): Added a null check.
      (WebCore::StylePendingImage::cssCursorImageValue): Added a null check.
      (WebCore::StylePendingImage::cssImageSetValue): Added a null check.
      (WebCore::StylePendingImage::detachFromCSSValue): Added. Sets m_value to null since
      the style is no longer using this StylePendingImage.
      (WebCore::StylePendingImage::data): Changed to use the "this" pointer since all we
      need is some arbitrary pointer uniquely identifying the image. Before loading the image,
      we have no suitable weak identifier, so it suffices to use the unique pointer to each
      StylePendingImage object. This function is used only in a limited way; it would be nice
      to find a way to make the code less strange long term.
      
      LayoutTests:
      
      * fast/css/pending-image-crash-expected.txt: Added.
      * fast/css/pending-image-crash.xhtml: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6b9561a0
    • darin@apple.com's avatar
      Remove some unneeded code noticed while looking at StylePendingImage · 1be23539
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125618
      
      Reviewed by Andreas Kling.
      
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::loadPendingImage): Removed redundant function calls.
      
      * rendering/RenderImageResource.cpp: Removed unneeded nullImage and
      usesImageContainerSize member functions.
      (WebCore::RenderImageResource::image): Use Image::nullImage directly instead of
      through RenderImageResourceImage::nullImage.
      
      * rendering/RenderImageResource.h: Removed unneeded usesImageContainerSize
      and nullImage functions. Also removed unneeded includes.
      
      * rendering/RenderImageResourceStyleImage.h: Removed unneeded
      usesImageContainerSize override. Nobody was calling it.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1be23539
  2. 11 Dec, 2013 11 commits
    • gyuyoung.kim@samsung.com's avatar
      [WK2] Build fix after r160464 · 972a3396
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125615
      
      Patch by KyungTae Kim <ktf.kim@samsung.com> on 2013-12-11
      Reviewed by Gyuyoung Kim.
      
      Modify the 2nd parameter for calling WebContext::addMessageReceiver from "this" to "*this"
      because the parameter type is modified from CoreIPC::MessageReceiver* to CoreIPC::MessageReceiver&
      
      * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
      (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
      * UIProcess/WebBatteryManagerProxy.cpp:
      (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
      * UIProcess/WebNetworkInfoManagerProxy.cpp:
      (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
      * UIProcess/WebVibrationProxy.cpp:
      (WebKit::WebVibrationProxy::WebVibrationProxy):
      * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
      (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
      * WebProcess/Battery/WebBatteryManager.cpp:
      (WebKit::WebBatteryManager::WebBatteryManager):
      * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:
      (WebKit::WebNetworkInfoManager::WebNetworkInfoManager):
      * WebProcess/soup/WebSoupRequestManager.cpp:
      (WebKit::WebSoupRequestManager::WebSoupRequestManager):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160476 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      972a3396
    • lforschler@apple.com's avatar
      Versioning. · 60f3e188
      lforschler@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60f3e188
    • benjamin@webkit.org's avatar
      Add the CFNetwork implementation of the asynchronous ResourceHandle · 4da8bd42
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124440
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-11
      Reviewed by Alexey Proskuryakov.
      
      Add a second subclass of ResourceHandleCFURLConnectionDelegate: ResourceHandleCFURLConnectionDelegateWithOperationQueue.
      The difference is those objects handle the network callback on a different queue.
      
      Some common code has been refactored in ResourceHandleCFURLConnectionDelegate to reduce duplicated code.
      
      The initialization of the request and connection is moved to the subclass to clean up initialization.
      
      * WebCore.xcodeproj/project.pbxproj:
      * platform/network/ResourceHandle.h:
      * platform/network/ResourceHandleClient.cpp:
      (WebCore::ResourceHandleClient::willCacheResponseAsync):
      * platform/network/ResourceHandleClient.h:
      * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp: Added.
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::ResourceHandleCFURLConnectionDelegateWithOperationQueue):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::~ResourceHandleCFURLConnectionDelegateWithOperationQueue):
      (WebCore::connectionWasCancelled):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupRequest):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupConnectionScheduling):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::shouldUseCredentialStorage):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveDataArray):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueWillSendRequest):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueDidReceiveResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueShouldUseCredentialStorage):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueWillCacheResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueCanAuthenticateAgainstProtectionSpace):
      * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.h: Copied from Source/WebCore/platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h.
      * platform/network/cf/ResourceHandleCFNet.cpp:
      (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
      (WebCore::ResourceHandle::createCFURLConnection):
      (WebCore::ResourceHandle::start):
      (WebCore::ResourceHandle::shouldUseCredentialStorage):
      (WebCore::ResourceHandle::canAuthenticateAgainstProtectionSpace):
      (WebCore::ResourceHandle::continueWillSendRequest):
      (WebCore::ResourceHandle::continueDidReceiveResponse):
      (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
      (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
      (WebCore::ResourceHandle::continueWillCacheResponse):
      * platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:
      (WebCore::ResourceHandleCFURLConnectionDelegate::releaseHandle):
      (WebCore::ResourceHandleCFURLConnectionDelegate::synthesizeRedirectResponseIfNecessary):
      (WebCore::ResourceHandleCFURLConnectionDelegate::createResourceRequest):
      * platform/network/cf/ResourceHandleCFURLConnectionDelegate.h:
      * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp:
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::setupRequest):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::setupConnectionScheduling):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::willSendRequest):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueWillSendRequest):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueDidReceiveResponse):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueShouldUseCredentialStorage):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueWillCacheResponse):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueCanAuthenticateAgainstProtectionSpace):
      * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160467 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4da8bd42
    • commit-queue@webkit.org's avatar
      check-webkit-style shouldn't check spacing in #if preprocessor lines · ad0b1dc5
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125534
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-11
      Reviewed by Ryosuke Niwa.
      
      Preprocessor lines that start with #if shouldn't have to adhere to
      the same spacing requirements that regular code does
      
      * Scripts/webkitpy/style/checkers/cpp.py:
      (check_spacing):
      * Scripts/webkitpy/style/checkers/cpp_unittest.py:
      (CppStyleTest.test_spacing_for_binary_ops):
      (WebKitStyleTest.test_line_breaking):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160466 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ad0b1dc5
    • commit-queue@webkit.org's avatar
      [Win] Build fix after r159768. · fbd5e8e7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125467
      
      Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-11
      Reviewed by Brent Fulgham.
      
      * WebKit.vcxproj/WebKit/WebKitVersion.cmd:
      Set PATH environment variable to include cygwin bin directory.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160465 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fbd5e8e7
    • andersca@apple.com's avatar
      MessageReceiverMap should take MessageReceiver objects by reference · b19db267
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125605
      
      Reviewed by Tim Horton.
      
      * Platform/CoreIPC/MessageReceiverMap.cpp:
      (CoreIPC::MessageReceiverMap::addMessageReceiver):
      * Platform/CoreIPC/MessageReceiverMap.h:
      * Shared/Authentication/AuthenticationManager.cpp:
      (WebKit::AuthenticationManager::AuthenticationManager):
      * Shared/ChildProcess.cpp:
      (WebKit::ChildProcess::addMessageReceiver):
      * Shared/ChildProcess.h:
      * Shared/ChildProcessProxy.cpp:
      (WebKit::ChildProcessProxy::addMessageReceiver):
      * Shared/ChildProcessProxy.h:
      * UIProcess/Downloads/DownloadProxyMap.cpp:
      (WebKit::DownloadProxyMap::createDownloadProxy):
      * UIProcess/DrawingAreaProxy.cpp:
      (WebKit::DrawingAreaProxy::DrawingAreaProxy):
      * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
      (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
      * UIProcess/WebApplicationCacheManagerProxy.cpp:
      (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
      * UIProcess/WebConnectionToWebProcess.cpp:
      (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::WebContext):
      (WebKit::WebContext::addMessageReceiver):
      * UIProcess/WebContext.h:
      * UIProcess/WebCookieManagerProxy.cpp:
      (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
      * UIProcess/WebDatabaseManagerProxy.cpp:
      (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
      * UIProcess/WebFullScreenManagerProxy.cpp:
      (WebKit::WebFullScreenManagerProxy::WebFullScreenManagerProxy):
      * UIProcess/WebGeolocationManagerProxy.cpp:
      (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
      * UIProcess/WebIconDatabase.cpp:
      (WebKit::WebIconDatabase::WebIconDatabase):
      * UIProcess/WebInspectorProxy.cpp:
      (WebKit::WebInspectorProxy::WebInspectorProxy):
      * UIProcess/WebMediaCacheManagerProxy.cpp:
      (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
      * UIProcess/WebOriginDataManagerProxy.cpp:
      (WebKit::WebOriginDataManagerProxy::WebOriginDataManagerProxy):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::WebPageProxy):
      (WebKit::WebPageProxy::reattachToWebProcess):
      * UIProcess/WebResourceCacheManagerProxy.cpp:
      (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
      * UIProcess/mac/RemoteLayerTreeHost.mm:
      (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
      * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
      (WebKit::WebApplicationCacheManager::WebApplicationCacheManager):
      * WebProcess/Cookies/WebCookieManager.cpp:
      (WebKit::WebCookieManager::WebCookieManager):
      * WebProcess/Geolocation/WebGeolocationManager.cpp:
      (WebKit::WebGeolocationManager::WebGeolocationManager):
      * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
      (WebKit::WebIconDatabaseProxy::WebIconDatabaseProxy):
      * WebProcess/MediaCache/WebMediaCacheManager.cpp:
      (WebKit::WebMediaCacheManager::WebMediaCacheManager):
      * WebProcess/Notifications/WebNotificationManager.cpp:
      (WebKit::WebNotificationManager::WebNotificationManager):
      * WebProcess/OriginData/WebOriginDataManager.cpp:
      (WebKit::WebOriginDataManager::WebOriginDataManager):
      * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
      (WebKit::WebResourceCacheManager::WebResourceCacheManager):
      * WebProcess/Storage/StorageAreaMap.cpp:
      (WebKit::StorageAreaMap::StorageAreaMap):
      * WebProcess/WebConnectionToUIProcess.cpp:
      (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
      * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
      (WebKit::WebDatabaseManager::WebDatabaseManager):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160464 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b19db267
    • alex.christensen@flexsim.com's avatar
      [Win] Unreviewed link fix. · e02ef2e6
      alex.christensen@flexsim.com authored
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
      Corrected 64-bit linker symbols.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160463 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e02ef2e6
    • ddkilzer@apple.com's avatar
      Define m_hasBadParent in InlineBox if defined(ADDRESS_SANITIZER) · e358e867
      ddkilzer@apple.com authored
      <http://webkit.org/b/125329>
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      No tests since this is a build fix for:
      
          $ ./Tools/Scripts/build-webkit --release OTHER_CFLAGS="$inherited -DADDRESS_SANITIZER=1"
      
      * rendering/InlineBox.cpp:
      * rendering/InlineBox.h:
      - Replace ASSERT_DISABLED use with
        ASSERT_WITH_SECURITY_IMPLICATION_DISABLED for m_hasBadParent.
      
      * rendering/InlineFlowBox.cpp:
      (WebCore::InlineFlowBox::~InlineFlowBox):
      - Use !ASSERT_WITH_SECURITY_IMPLICATION_DISABLED instead of
        #ifndef NDEBUG since this calls setHasBadParent().
      (WebCore::InlineFlowBox::checkConsistency):
      - Move ASSERT(!m_hasBadChildList) outside of
        #if CHECK_CONSISTENCY and change to
        ASSERT_WITH_SECURITY_IMPLICATION(!m_hasBadChildList).
      
      * rendering/InlineFlowBox.h:
      (WebCore::InlineFlowBox::InlineFlowBox):
      (WebCore::InlineFlowBox::setHasBadChildList):
      - Change #ifndef NDEBUG to
        #if !ASSERT_WITH_SECURITY_IMPLICATION_DISABLED for code using
        m_hasBadChildList.
      
      Source/WTF:
      
      * wtf/Assertions.h: Define macro
      ASSERT_WITH_SECURITY_IMPLICATION_DISABLED based on whether
      ASSERT_WITH_SECURITY_IMPLICATION() is enabled.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e358e867
    • commit-queue@webkit.org's avatar
      check-webkit-style can't determine if a comma is part of an initialization list · f4df91bc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125537
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-11
      Reviewed by Darin Adler.
      
      The original check to make sure that initialization list lines start with
      a comma didn't distinguish between commas that belong to the initialization
      list and commas that are part of function calls. Because we don't want to
      match parentheses with regular expressions, we should weaken this check to
      only check for commas at the end of initialization list lines.
      
      * Scripts/webkitpy/style/checkers/cpp.py:
      (check_member_initialization_list):
      * Scripts/webkitpy/style/checkers/cpp_unittest.py:
      (WebKitStyleTest.test_member_initialization_list):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160461 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4df91bc
    • commit-queue@webkit.org's avatar
      Type punning error in MD5.cpp · 161a1e88
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125412
      
      Patch by Brendan Long <b.long@cablelabs.com> on 2013-12-11
      Reviewed by Darin Adler.
      
      * wtf/MD5.cpp:
      (WTF::toLittleEndian): Renamed, and use memcpy instead of casting.
      (WTF::MD5::addBytes): Renamed reverseBytes to toLittleEndian.
      (WTF::MD5::checksum): Same, and use memcpy instead of casting to prevent type punning error.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160460 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      161a1e88
    • timothy_horton@apple.com's avatar
      Make it possible to compare layout test results between various configurations of WebKit · a44161b9
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125212
      <rdar://problem/15199108>
      
      Reviewed by Darin Adler.
      
      * Scripts/compare-webkit-configurations: Added.
      Add a script that allows comparison between the "normal" WebKit configuration
      used for testing and a different configuration (e.g. with accelerated drawing
      turned on, with the remote layer tree enabled, or WebKit1 vs WebKit2), like so:
      
      compare-webkit-configurations -2 --comparison=accelerated-drawing compositing/background-color
      
      This script runs the tests once in the default configuration, ignoring
      all test expectations, writing the results out to a temporary directory.
      
      It then runs the tests again in the modified configuration, against the
      just-written temporary results.
      
      Ref tests are treated as pixel tests, with their pixel output dumped to disk.
      
      * DumpRenderTree/mac/DumpRenderTree.mm:
      (resetWebPreferencesToConsistentValues):
      (initializeGlobalsFromCommandLineOptions):
      Enable accelerated drawing if requested.
      
      * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
      (parse_args):
      Add --accelerated-drawing and --remote-layer-tree feature switches, which
      are forwarded on to the test drivers.
      Move those two and --complex-text into their own "feature switches" section.
      Drive-by change "Mac OS X" to "OS X".
      Add --treat-ref-tests-as-pixel-tests option, which treats ref tests
      as traditional pixel tests (with PNGs dumped on disk), and
      ignores e.g. -expected.html files.
      
      * Scripts/webkitpy/port/base.py:
      (Port.reference_files):
      Pretend that there are no ref tests.
      Since is_reference_html_file is intact, our mechanism to ignore
      the expected files will continue working in this case.
      
      * Scripts/webkitpy/port/driver.py:
      (Driver.cmd_line):
      Forward --accelerated-drawing and --remote-layer-tree to DRT/WKTR.
      
      * WebKitTestRunner/TestController.cpp:
      (WTR::TestController::TestController):
      (WTR::TestController::initialize):
      (WTR::TestController::resetPreferencesToConsistentValues):
      * WebKitTestRunner/TestController.h:
      (WTR::TestController::shouldUseRemoteLayerTree):
      * WebKitTestRunner/TestInvocation.cpp:
      (WTR::updateThreadedScrollingForCurrentTest):
      * WebKitTestRunner/mac/PlatformWebViewMac.mm:
      (WTR::PlatformWebView::PlatformWebView):
      Parse and implement the three feature switches.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160459 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a44161b9