Changeset 232198 in webkit
- Timestamp:
- May 25, 2018, 1:39:37 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 52 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r232194 r232198 1 2018-05-25 Alex Christensen <achristensen@webkit.org> 2 3 URL::host should return a StringView to reduce allocations 4 https://bugs.webkit.org/show_bug.cgi?id=185986 5 6 Reviewed by Geoff Garen. 7 8 No change in behaviour. Just fewer allocations. 9 10 * Modules/plugins/YouTubePluginReplacement.cpp: 11 (WebCore::isYouTubeURL): 12 (WebCore::processAndCreateYouTubeURL): 13 * Modules/websockets/WebSocketHandshake.cpp: 14 (WebCore::hostName): 15 (WebCore::WebSocketHandshake::host const): 16 * contentextensions/ContentExtension.cpp: 17 (WebCore::ContentExtensions::ContentExtension::populateConditionCacheIfNeeded): 18 * html/HTMLAnchorElement.cpp: 19 (WebCore::HTMLAnchorElement::parseAttribute): 20 * html/HTMLMediaElement.cpp: 21 (WebCore::HTMLMediaElement::mediaSessionTitle const): 22 (WebCore::needsSeekingSupportQuirk): 23 * html/HTMLPlugInImageElement.cpp: 24 (WebCore::HTMLPlugInImageElement::restartSimilarPlugIns): 25 (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): 26 (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): 27 * html/ImageDocument.cpp: 28 (WebCore::ImageDocument::finishedParsing): 29 * html/URLUtils.h: 30 (WebCore::URLUtils<T>::hostname const): 31 * loader/FrameLoader.cpp: 32 (WebCore::FrameLoader::setFirstPartyForCookies): 33 * loader/LinkLoader.cpp: 34 (WebCore::LinkLoader::loadLink): 35 * loader/ResourceLoadStatistics.cpp: 36 (WebCore::ResourceLoadStatistics::primaryDomain): 37 * loader/mac/LoaderNSURLExtras.mm: 38 (suggestedFilenameWithMIMEType): 39 * page/Chrome.cpp: 40 (WebCore::Chrome::mouseDidMoveOverElement): 41 * page/Location.cpp: 42 (WebCore::Location::hostname const): 43 * page/Page.cpp: 44 (WebCore::Page::mainFrameLoadStarted): 45 * page/PerformanceMonitor.cpp: 46 (WebCore::reportPageOverPostLoadResourceThreshold): 47 * page/SecurityOrigin.cpp: 48 (WebCore::isLoopbackIPAddress): 49 (WebCore::shouldTreatAsPotentiallyTrustworthy): 50 (WebCore::SecurityOrigin::isLocalHostOrLoopbackIPAddress): 51 * page/SecurityOrigin.h: 52 * page/SecurityOriginData.h: 53 (WebCore::SecurityOriginData::fromURL): 54 * page/UserContentURLPattern.cpp: 55 (WebCore::UserContentURLPattern::matchesHost const): 56 * page/csp/ContentSecurityPolicySource.cpp: 57 (WebCore::ContentSecurityPolicySource::hostMatches const): 58 * platform/PublicSuffix.h: 59 * platform/URL.cpp: 60 (WebCore::URL::host const): 61 (WebCore::URL::hostAndPort const): 62 (WebCore::URL::isMatchingDomain const): 63 * platform/URL.h: 64 * platform/mac/SSLKeyGeneratorMac.mm: 65 (WebCore::signedPublicKeyAndChallengeString): 66 * platform/network/ResourceRequestBase.h: 67 (WebCore::registrableDomainsAreEqual): 68 * platform/network/cf/NetworkStorageSessionCFNet.cpp: 69 (WebCore::getPartitioningDomain): 70 * platform/network/cf/SocketStreamHandleImplCFNet.cpp: 71 (WebCore::SocketStreamHandleImpl::createStreams): 72 * workers/WorkerLocation.cpp: 73 (WebCore::WorkerLocation::hostname const): 74 * workers/service/server/SWServer.cpp: 75 (WebCore::SWServer::performGetOriginsWithRegistrationsCallbacks): 76 1 77 2018-05-24 Dean Jackson <dino@apple.com> 2 78 -
trunk/Source/WebCore/Modules/plugins/YouTubePluginReplacement.cpp
r225117 r232198 177 177 static bool isYouTubeURL(const URL& url) 178 178 { 179 StringhostName = url.host();179 auto hostName = url.host(); 180 180 return equalLettersIgnoringASCIICase(hostName, "m.youtube.com") 181 181 || equalLettersIgnoringASCIICase(hostName, "youtu.be") … … 204 204 return URL(); 205 205 206 StringhostName = url.host();206 auto hostName = url.host(); 207 207 bool isYouTubeMobileWebAppURL = equalLettersIgnoringASCIICase(hostName, "m.youtube.com"); 208 208 isYouTubeShortenedURL = equalLettersIgnoringASCIICase(hostName, "youtu.be"); -
trunk/Source/WebCore/Modules/websockets/WebSocketHandshake.cpp
r230875 r232198 83 83 ASSERT(url.protocolIs("wss") == secure); 84 84 StringBuilder builder; 85 builder.append(url.host(). convertToASCIILowercase());85 builder.append(url.host().toString().convertToASCIILowercase()); 86 86 if (url.port() && ((!secure && url.port().value() != 80) || (secure && url.port().value() != 443))) { 87 87 builder.append(':'); … … 147 147 const String WebSocketHandshake::host() const 148 148 { 149 return m_url.host(). convertToASCIILowercase();149 return m_url.host().toString().convertToASCIILowercase(); 150 150 } 151 151 -
trunk/Source/WebCore/contentextensions/ContentExtension.cpp
r230326 r232198 123 123 DFABytecodeInterpreter interpreter(m_compiledExtension->topURLFiltersBytecode(), m_compiledExtension->topURLFiltersBytecodeLength()); 124 124 const uint16_t allLoadTypesAndResourceTypes = LoadTypeMask | ResourceTypeMask; 125 String string = m_compiledExtension->conditionsApplyOnlyToDomain() ? topURL.host() : topURL.string();125 String string = m_compiledExtension->conditionsApplyOnlyToDomain() ? topURL.host().toString() : topURL.string(); 126 126 auto topURLActions = interpreter.interpret(string.utf8(), allLoadTypesAndResourceTypes); 127 127 -
trunk/Source/WebCore/html/HTMLAnchorElement.cpp
r232194 r232198 245 245 if (document().isDNSPrefetchEnabled() && document().frame()) { 246 246 if (protocolIsInHTTPFamily(parsedURL) || parsedURL.startsWith("//")) 247 document().frame()->loader().client().prefetchDNS(document().completeURL(parsedURL).host() );247 document().frame()->loader().client().prefetchDNS(document().completeURL(parsedURL).host().toString()); 248 248 } 249 249 } -
trunk/Source/WebCore/html/HTMLMediaElement.cpp
r232001 r232198 7462 7462 return title; 7463 7463 7464 title = m_currentSrc.host() ;7464 title = m_currentSrc.host().toString(); 7465 7465 #if PLATFORM(MAC) || PLATFORM(IOS) 7466 7466 if (!title.isEmpty()) … … 7525 7525 return false; 7526 7526 7527 Stringhost = document.topDocument().url().host();7527 auto host = document.topDocument().url().host(); 7528 7528 return equalLettersIgnoringASCIICase(host, "netflix.com") || host.endsWithIgnoringASCIICase(".netflix.com"); 7529 7529 } -
trunk/Source/WebCore/html/HTMLPlugInImageElement.cpp
r231292 r232198 436 436 // may be in different frames, so traverse from the top of the document. 437 437 438 StringplugInOrigin = m_loadedUrl.host();438 auto plugInOrigin = m_loadedUrl.host(); 439 439 String mimeType = serviceType(); 440 440 Vector<Ref<HTMLPlugInImageElement>> similarPlugins; … … 470 470 m_pendingClickEventFromSnapshot = &event; 471 471 472 StringplugInOrigin = m_loadedUrl.host();472 auto plugInOrigin = m_loadedUrl.host(); 473 473 if (document().page() && !SchemeRegistry::shouldTreatURLSchemeAsLocal(document().page()->mainFrame().document()->baseURL().protocol().toStringWithoutCopying()) && document().page()->settings().autostartOriginPlugInSnapshottingEnabled()) 474 document().page()->plugInClient()->didStartFromOrigin(document().page()->mainFrame().document()->baseURL().host() , plugInOrigin, serviceType(), document().page()->sessionID());474 document().page()->plugInClient()->didStartFromOrigin(document().page()->mainFrame().document()->baseURL().host().toString(), plugInOrigin.toString(), serviceType(), document().page()->sessionID()); 475 475 476 476 LOG(Plugins, "%p User clicked on snapshotted plug-in. Restart.", this); … … 676 676 } 677 677 678 if (document().page()->settings().autostartOriginPlugInSnapshottingEnabled() && document().page()->plugInClient() && document().page()->plugInClient()->shouldAutoStartFromOrigin(document().page()->mainFrame().document()->baseURL().host() , url.host(), serviceType())) {678 if (document().page()->settings().autostartOriginPlugInSnapshottingEnabled() && document().page()->plugInClient() && document().page()->plugInClient()->shouldAutoStartFromOrigin(document().page()->mainFrame().document()->baseURL().host().toString(), url.host().toString(), serviceType())) { 679 679 LOG(Plugins, "%p Plug-in from (%s, %s) is marked to auto-start, set to play", this, document().page()->mainFrame().document()->baseURL().host().utf8().data(), url.host().utf8().data()); 680 680 m_snapshotDecision = NeverSnapshot; -
trunk/Source/WebCore/html/ImageDocument.cpp
r231114 r232198 169 169 String name = decodeURLEscapeSequences(url().lastPathComponent()); 170 170 if (name.isEmpty()) 171 name = url().host() ;171 name = url().host().toString(); 172 172 setTitle(imageTitle(name, size)); 173 173 } -
trunk/Source/WebCore/html/URLUtils.h
r217004 r232198 187 187 String URLUtils<T>::hostname() const 188 188 { 189 return href().host() ;189 return href().host().toString(); 190 190 } 191 191 -
trunk/Source/WebCore/loader/FrameLoader.cpp
r232147 r232198 1077 1077 frame->document()->setFirstPartyForCookies(url); 1078 1078 1079 String registrableDomain = ResourceRequest::partitionName(url.host() );1079 String registrableDomain = ResourceRequest::partitionName(url.host().toString()); 1080 1080 for (Frame* frame = &m_frame; frame; frame = frame->tree().traverseNext(&m_frame)) { 1081 1081 if (SecurityPolicy::shouldInheritSecurityOriginFromOwner(frame->document()->url()) || registrableDomainsAreEqual(frame->document()->url(), registrableDomain)) -
trunk/Source/WebCore/loader/LinkLoader.cpp
r231713 r232198 295 295 // to complete that as URL <https://bugs.webkit.org/show_bug.cgi?id=48857>. 296 296 if (document.settings().dnsPrefetchingEnabled() && href.isValid() && !href.isEmpty() && document.frame()) 297 document.frame()->loader().client().prefetchDNS(href.host() );297 document.frame()->loader().client().prefetchDNS(href.host().toString()); 298 298 } 299 299 -
trunk/Source/WebCore/loader/ResourceLoadStatistics.cpp
r229919 r232198 334 334 String ResourceLoadStatistics::primaryDomain(const URL& url) 335 335 { 336 return primaryDomain(url.host() );336 return primaryDomain(url.host().toString()); 337 337 } 338 338 -
trunk/Source/WebCore/loader/mac/LoaderNSURLExtras.mm
r225087 r232198 49 49 if ([filename length] == 0 || [lastPathComponent isEqualToString:@"/"]) { 50 50 // lastPathComponent is no good, try the host. 51 NSString *host = URL(url).host() ;51 NSString *host = URL(url).host().toString(); 52 52 filename = filenameByFixingIllegalCharacters(host); 53 53 if ([filename length] == 0) { -
trunk/Source/WebCore/page/Chrome.cpp
r231779 r232198 325 325 { 326 326 if (result.innerNode() && result.innerNode()->document().isDNSPrefetchEnabled()) 327 m_page.mainFrame().loader().client().prefetchDNS(result.absoluteLinkURL().host() );327 m_page.mainFrame().loader().client().prefetchDNS(result.absoluteLinkURL().host().toString()); 328 328 m_client.mouseDidMoveOverElement(result, modifierFlags); 329 329 -
trunk/Source/WebCore/page/Location.cpp
r230864 r232198 95 95 return String(); 96 96 97 return url().host() ;97 return url().host().toString(); 98 98 } 99 99 -
trunk/Source/WebCore/page/Page.cpp
r231798 r232198 2105 2105 String domain; 2106 2106 #if ENABLE(PUBLIC_SUFFIX_LIST) 2107 domain = topPrivatelyControlledDomain(destinationURL.host() );2107 domain = topPrivatelyControlledDomain(destinationURL.host().toString()); 2108 2108 #else 2109 2109 UNUSED_PARAM(destinationURL); -
trunk/Source/WebCore/page/PerformanceMonitor.cpp
r230211 r232198 149 149 return; 150 150 151 String domain = topPrivatelyControlledDomain(document->url().host() );151 String domain = topPrivatelyControlledDomain(document->url().host().toString()); 152 152 if (domain.isEmpty()) 153 153 return; -
trunk/Source/WebCore/page/SecurityOrigin.cpp
r230205 r232198 100 100 } 101 101 102 static bool isLoopbackIPAddress( const String&host)102 static bool isLoopbackIPAddress(StringView host) 103 103 { 104 104 // The IPv6 loopback address is 0:0:0:0:0:0:0:1, which compresses to ::1. … … 138 138 bool shouldTreatAsPotentiallyTrustworthy(const URL& url) 139 139 { 140 return shouldTreatAsPotentiallyTrustworthy(url.protocol().toStringWithoutCopying(), url.host() );140 return shouldTreatAsPotentiallyTrustworthy(url.protocol().toStringWithoutCopying(), url.host().toStringWithoutCopying()); 141 141 } 142 142 … … 549 549 } 550 550 551 bool SecurityOrigin::isLocalHostOrLoopbackIPAddress( const String&host)551 bool SecurityOrigin::isLocalHostOrLoopbackIPAddress(StringView host) 552 552 { 553 553 if (isLoopbackIPAddress(host)) -
trunk/Source/WebCore/page/SecurityOrigin.h
r230541 r232198 203 203 bool isPotentiallyTrustworthy() const { return m_isPotentiallyTrustworthy; } 204 204 205 static bool isLocalHostOrLoopbackIPAddress( const String& host);205 static bool isLocalHostOrLoopbackIPAddress(StringView); 206 206 207 207 const SecurityOriginData& data() const { return m_data; } -
trunk/Source/WebCore/page/SecurityOriginData.h
r229979 r232198 51 51 return SecurityOriginData { 52 52 url.protocol().isNull() ? emptyString() : url.protocol().toString().convertToASCIILowercase(), 53 url.host().isNull() ? emptyString() : url.host(). convertToASCIILowercase(),53 url.host().isNull() ? emptyString() : url.host().toString().convertToASCIILowercase(), 54 54 url.port() 55 55 }; -
trunk/Source/WebCore/page/UserContentURLPattern.cpp
r225117 r232198 126 126 bool UserContentURLPattern::matchesHost(const URL& test) const 127 127 { 128 const String&host = test.host();128 auto host = test.host(); 129 129 if (equalIgnoringASCIICase(host, m_host)) 130 130 return true; -
trunk/Source/WebCore/page/csp/ContentSecurityPolicySource.cpp
r231476 r232198 65 65 bool ContentSecurityPolicySource::hostMatches(const URL& url) const 66 66 { 67 const String&host = url.host();68 return equalIgnoringASCIICase(host, m_host) || (m_hostHasWildcard && host.endsWithIgnoringASCIICase( "." + m_host));67 auto host = url.host(); 68 return equalIgnoringASCIICase(host, m_host) || (m_hostHasWildcard && host.endsWithIgnoringASCIICase(makeString(".", m_host))); 69 69 70 70 } -
trunk/Source/WebCore/platform/PublicSuffix.h
r232001 r232198 24 24 */ 25 25 26 #ifndef PublicSuffix_h 27 #define PublicSuffix_h 26 #pragma once 28 27 29 28 #include <wtf/text/WTFString.h> … … 40 39 41 40 #endif // ENABLE(PUBLIC_SUFFIX_LIST) 42 43 #endif // PublicSuffix_h -
trunk/Source/WebCore/platform/URL.cpp
r231110 r232198 156 156 } 157 157 158 String URL::host() const158 StringView URL::host() const 159 159 { 160 160 unsigned start = hostStart(); 161 return m_string.substring(start, m_hostEnd - start);161 return StringView(m_string).substring(start, m_hostEnd - start); 162 162 } 163 163 … … 181 181 { 182 182 if (auto port = this->port()) 183 return host() + ':' + String::number(port.value());184 return host() ;183 return makeString(host(), ':', String::number(port.value())); 184 return host().toString(); 185 185 } 186 186 … … 797 797 return false; 798 798 799 return host.length() == domain.length() || host .characterAt(host.length() - domain.length() - 1)== '.';799 return host.length() == domain.length() || host[host.length() - domain.length() - 1] == '.'; 800 800 } 801 801 -
trunk/Source/WebCore/platform/URL.h
r229540 r232198 105 105 106 106 WEBCORE_EXPORT StringView protocol() const; 107 WEBCORE_EXPORT String host() const;107 WEBCORE_EXPORT StringView host() const; 108 108 WEBCORE_EXPORT std::optional<uint16_t> port() const; 109 109 WEBCORE_EXPORT String hostAndPort() const; -
trunk/Source/WebCore/platform/UserAgentQuirks.cpp
r231800 r232198 37 37 static bool isGoogle(const URL& url) 38 38 { 39 String baseDomain = topPrivatelyControlledDomain(url.host() );39 String baseDomain = topPrivatelyControlledDomain(url.host().toString()); 40 40 41 41 // Our Google UA is *very* complicated to get right. Read … … 61 61 static bool urlRequiresChromeBrowser(const URL& url) 62 62 { 63 String baseDomain = topPrivatelyControlledDomain(url.host() );63 String baseDomain = topPrivatelyControlledDomain(url.host().toString()); 64 64 65 65 // Needed for fonts on many sites to work with WebKit. … … 79 79 static bool urlRequiresMacintoshPlatform(const URL& url) 80 80 { 81 String domain = url.host() ;81 String domain = url.host().toString(); 82 82 String baseDomain = topPrivatelyControlledDomain(domain); 83 83 -
trunk/Source/WebCore/platform/mac/SSLKeyGeneratorMac.mm
r230225 r232198 247 247 auto challenge = challengeString.isAllASCII() ? challengeString.ascii() : ""; 248 248 249 return signedPublicKeyAndChallengeString(keySize, challenge, keygenKeychainItemName(url.host() ));249 return signedPublicKeyAndChallengeString(keySize, challenge, keygenKeychainItemName(url.host().toString())); 250 250 } 251 251 -
trunk/Source/WebCore/platform/network/ResourceRequestBase.h
r232090 r232198 256 256 inline bool registrableDomainsAreEqual(const URL& a, const URL& b) 257 257 { 258 return ResourceRequestBase::partitionName(a.host() ) == ResourceRequestBase::partitionName(b.host());258 return ResourceRequestBase::partitionName(a.host().toString()) == ResourceRequestBase::partitionName(b.host().toString()); 259 259 } 260 260 inline bool registrableDomainsAreEqual(const URL& a, const String& registrableDomain) 261 261 { 262 return ResourceRequestBase::partitionName(a.host() ) == registrableDomain;262 return ResourceRequestBase::partitionName(a.host().toString()) == registrableDomain; 263 263 } 264 264 -
trunk/Source/WebCore/platform/network/cf/NetworkStorageSessionCFNet.cpp
r229978 r232198 199 199 { 200 200 #if ENABLE(PUBLIC_SUFFIX_LIST) 201 auto domain = topPrivatelyControlledDomain(url.host() );201 auto domain = topPrivatelyControlledDomain(url.host().toString()); 202 202 if (domain.isEmpty()) 203 domain = url.host() ;203 domain = url.host().toString(); 204 204 #else 205 auto domain = url.host() ;205 auto domain = url.host().toString(); 206 206 #endif 207 207 return domain; -
trunk/Source/WebCore/platform/network/cf/SocketStreamHandleImplCFNet.cpp
r231319 r232198 313 313 return; 314 314 315 RetainPtr<CFStringRef> host = m_url.host(). createCFString();315 RetainPtr<CFStringRef> host = m_url.host().toString().createCFString(); 316 316 317 317 // Creating streams to final destination, not to proxy. -
trunk/Source/WebCore/platform/network/curl/CookieJarDB.cpp
r231862 r232198 246 246 247 247 URL requestUrlObj(ParsedURLString, requestUrl); 248 String requestHost(requestUrlObj.host(). convertToASCIILowercase());248 String requestHost(requestUrlObj.host().toString().convertToASCIILowercase()); 249 249 String requestPath(requestUrlObj.path().convertToASCIILowercase()); 250 250 … … 383 383 384 384 URL urlObj(ParsedURLString, url); 385 String host(urlObj.host() );385 String host(urlObj.host().toString()); 386 386 String path(urlObj.path()); 387 387 … … 418 418 URL urlObj(ParsedURLString, urlCopied); 419 419 if (urlObj.isValid()) { 420 String hostStr(urlObj.host() );420 String hostStr(urlObj.host().toString()); 421 421 String pathStr(urlObj.path()); 422 422 int ret = deleteCookieInternal(name, hostStr, pathStr); -
trunk/Source/WebCore/platform/network/soup/SoupNetworkSession.cpp
r230885 r232198 278 278 return std::nullopt; 279 279 280 auto it = clientCertificates().find(requestURL.host() );280 auto it = clientCertificates().find(requestURL.host().toString()); 281 281 if (it != clientCertificates().end() && it->value.contains(certificate)) 282 282 return std::nullopt; -
trunk/Source/WebCore/platform/win/PasteboardWin.cpp
r229503 r232198 370 370 title = url.lastPathComponent(); 371 371 if (title.isEmpty()) 372 title = url.host() ;372 title = url.host().toString(); 373 373 } 374 374 … … 708 708 title = pasteboardURL.url.lastPathComponent(); 709 709 if (title.isEmpty()) 710 title = pasteboardURL.url.host() ;710 title = pasteboardURL.url.host().toString(); 711 711 } 712 712 -
trunk/Source/WebCore/workers/WorkerLocation.cpp
r230009 r232198 49 49 String WorkerLocation::hostname() const 50 50 { 51 return m_url.host() ;51 return m_url.host().toString(); 52 52 } 53 53 -
trunk/Source/WebCore/workers/service/server/SWServer.cpp
r230500 r232198 867 867 for (auto& key : m_registrations.keys()) { 868 868 originsWithRegistrations.add(key.topOrigin()); 869 originsWithRegistrations.add(SecurityOriginData { key.scope().protocol().toString(), key.scope().host() , key.scope().port() });869 originsWithRegistrations.add(SecurityOriginData { key.scope().protocol().toString(), key.scope().host().toString(), key.scope().port() }); 870 870 } 871 871 -
trunk/Source/WebKit/ChangeLog
r232196 r232198 1 2018-05-25 Alex Christensen <achristensen@webkit.org> 2 3 URL::host should return a StringView to reduce allocations 4 https://bugs.webkit.org/show_bug.cgi?id=185986 5 6 Reviewed by Geoff Garen. 7 8 * NetworkProcess/NetworkProcess.cpp: 9 (WebKit::fetchDiskCacheEntries): 10 * NetworkProcess/NetworkResourceLoader.cpp: 11 (WebKit::areFrameAncestorsSameSite): 12 * NetworkProcess/mac/NetworkProcessMac.mm: 13 (WebKit::overrideSystemProxies): 14 * Shared/API/APIURL.h: 15 (API::URL::host const): 16 * UIProcess/Automation/WebAutomationSession.cpp: 17 (WebKit::WebAutomationSession::addSingleCookie): 18 (WebKit::WebAutomationSession::deleteAllCookies): 19 * UIProcess/WebProcessProxy.cpp: 20 (WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch): 21 * WebProcess/Plugins/PluginView.cpp: 22 (WebKit::PluginView::pluginDidReceiveUserInteraction): 23 * WebProcess/Plugins/WebPluginInfoProvider.cpp: 24 (WebKit::WebPluginInfoProvider::populatePluginCache): 25 * WebProcess/WebPage/WebPage.cpp: 26 (WebKit::needsHiddenContentEditableQuirk): 27 (WebKit::needsPlainTextQuirk): 28 (WebKit::WebPage::determinePrimarySnapshottedPlugIn): 29 1 30 2018-05-25 Adrian Perez de Castro <aperez@igalia.com> 2 31 -
trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp
r232176 r232198 478 478 479 479 auto url = traversalEntry->entry.response().url(); 480 auto result = originsAndSizes.add({url.protocol().toString(), url.host() , url.port()}, 0);480 auto result = originsAndSizes.add({url.protocol().toString(), url.host().toString(), url.port()}, 0); 481 481 482 482 if (fetchOptions.contains(WebsiteDataFetchOption::ComputeSizes)) -
trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp
r232163 r232198 365 365 { 366 366 #if ENABLE(PUBLIC_SUFFIX_LIST) 367 auto responsePartition = ResourceRequest::partitionName(response.url().host() );367 auto responsePartition = ResourceRequest::partitionName(response.url().host().toString()); 368 368 return frameAncestorOrigins.findMatching([&](const auto& item) { 369 369 return item->isUnique() || ResourceRequest::partitionName(item->host()) != responsePartition; -
trunk/Source/WebKit/NetworkProcess/mac/NetworkProcessMac.mm
r231239 r232198 73 73 URL httpProxyURL(URL(), httpProxy); 74 74 if (httpProxyURL.isValid()) { 75 [proxySettings setObject:nsStringFromWebCoreString(httpProxyURL.host() ) forKey:(NSString *)kCFNetworkProxiesHTTPProxy];75 [proxySettings setObject:nsStringFromWebCoreString(httpProxyURL.host().toString()) forKey:(NSString *)kCFNetworkProxiesHTTPProxy]; 76 76 if (httpProxyURL.port()) { 77 77 NSNumber *port = [NSNumber numberWithInt:httpProxyURL.port().value()]; … … 87 87 if (httpsProxyURL.isValid()) { 88 88 #if !ENABLE(MINIMAL_SIMULATOR) 89 [proxySettings setObject:nsStringFromWebCoreString(httpsProxyURL.host() ) forKey:(NSString *)kCFNetworkProxiesHTTPSProxy];89 [proxySettings setObject:nsStringFromWebCoreString(httpsProxyURL.host().toString()) forKey:(NSString *)kCFNetworkProxiesHTTPSProxy]; 90 90 if (httpsProxyURL.port()) { 91 91 NSNumber *port = [NSNumber numberWithInt:httpsProxyURL.port().value()]; -
trunk/Source/WebKit/Shared/API/APIURL.h
r207769 r232198 65 65 { 66 66 parseURLIfNecessary(); 67 return m_parsedURL->isValid() ? m_parsedURL->host() : WTF::String();67 return m_parsedURL->isValid() ? m_parsedURL->host().toString() : WTF::String(); 68 68 } 69 69 -
trunk/Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp
r232150 r232198 1318 1318 // Inherit the domain/host from the main frame's URL if it is not explicitly set. 1319 1319 if (domain.isEmpty()) 1320 domain = activeURL.host() ;1320 domain = activeURL.host().toString(); 1321 1321 1322 1322 cookie.domain = domainByAddingDotPrefixIfNeeded(domain); … … 1362 1362 1363 1363 WebCookieManagerProxy* cookieManager = m_processPool->supplement<WebCookieManagerProxy>(); 1364 cookieManager->deleteCookiesForHostname(page->websiteDataStore().sessionID(), domainByAddingDotPrefixIfNeeded(activeURL.host() ));1364 cookieManager->deleteCookiesForHostname(page->websiteDataStore().sessionID(), domainByAddingDotPrefixIfNeeded(activeURL.host().toString())); 1365 1365 } 1366 1366 -
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
r232165 r232198 5800 5800 #if PLATFORM(IOS) 5801 5801 if (m_process->isUnderMemoryPressure()) { 5802 String domain = WebCore::topPrivatelyControlledDomain(WebCore::URL(WebCore::ParsedURLString, currentURL()).host() );5802 String domain = WebCore::topPrivatelyControlledDomain(WebCore::URL(WebCore::ParsedURLString, currentURL()).host().toString()); 5803 5803 if (!domain.isEmpty()) 5804 5804 logDiagnosticMessageWithEnhancedPrivacy(WebCore::DiagnosticLoggingKeys::domainCausingJetsamKey(), domain, WebCore::ShouldSample::No); -
trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp
r231931 r232198 677 677 if (pages.size() == 1) { 678 678 auto& page = *pages[0]; 679 String domain = topPrivatelyControlledDomain(WebCore::URL(WebCore::ParsedURLString, page.currentURL()).host() );679 String domain = topPrivatelyControlledDomain(WebCore::URL(WebCore::ParsedURLString, page.currentURL()).host().toString()); 680 680 if (!domain.isEmpty()) 681 681 page.logDiagnosticMessageWithEnhancedPrivacy(WebCore::DiagnosticLoggingKeys::domainCausingCrashKey(), domain, WebCore::ShouldSample::No); -
trunk/Source/WebKit/WebProcess/Plugins/PluginView.cpp
r231963 r232198 1832 1832 1833 1833 HTMLPlugInImageElement& plugInImageElement = downcast<HTMLPlugInImageElement>(*m_pluginElement); 1834 String pageOrigin = plugInImageElement.document().page()->mainFrame().document()->baseURL().host() ;1835 String pluginOrigin = plugInImageElement.loadedUrl().host() ;1834 String pageOrigin = plugInImageElement.document().page()->mainFrame().document()->baseURL().host().toString(); 1835 String pluginOrigin = plugInImageElement.loadedUrl().host().toString(); 1836 1836 String mimeType = plugInImageElement.serviceType(); 1837 1837 -
trunk/Source/WebKit/WebProcess/Plugins/WebPluginInfoProvider.cpp
r230843 r232198 157 157 158 158 #if PLATFORM(MAC) 159 String pageHost = page.mainFrame().loader().documentLoader()->responseURL().host() ;159 String pageHost = page.mainFrame().loader().documentLoader()->responseURL().host().toString(); 160 160 if (pageHost.isNull()) 161 161 return; -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
r232032 r232198 4849 4849 return false; 4850 4850 4851 String host = url.host(); 4852 String path = url.path(); 4853 return equalLettersIgnoringASCIICase(host, "docs.google.com"); 4851 return equalLettersIgnoringASCIICase(url.host(), "docs.google.com"); 4854 4852 } 4855 4853 … … 4859 4857 return false; 4860 4858 4861 Stringhost = url.host();4859 auto host = url.host(); 4862 4860 4863 4861 if (equalLettersIgnoringASCIICase(host, "twitter.com")) … … 5432 5430 LOG(Plugins, "Primary Plug-In Detection: success - found a candidate plug-in - inform it."); 5433 5431 m_didFindPrimarySnapshottedPlugin = true; 5434 m_primaryPlugInPageOrigin = m_page->mainFrame().document()->baseURL().host() ;5435 m_primaryPlugInOrigin = candidatePlugIn->loadedUrl().host() ;5432 m_primaryPlugInPageOrigin = m_page->mainFrame().document()->baseURL().host().toString(); 5433 m_primaryPlugInOrigin = candidatePlugIn->loadedUrl().host().toString(); 5436 5434 m_primaryPlugInMimeType = candidatePlugIn->serviceType(); 5437 5435 -
trunk/Source/WebKitLegacy/ChangeLog
r231709 r232198 1 2018-05-25 Alex Christensen <achristensen@webkit.org> 2 3 URL::host should return a StringView to reduce allocations 4 https://bugs.webkit.org/show_bug.cgi?id=185986 5 6 Reviewed by Geoff Garen. 7 8 * WebCoreSupport/WebResourceLoadScheduler.cpp: 9 (WebResourceLoadScheduler::hostForURL): 10 1 11 2018-05-11 Charles Vazac <cvazac@gmail.com> 2 12 -
trunk/Source/WebKitLegacy/WebCoreSupport/WebResourceLoadScheduler.cpp
r231282 r232198 67 67 68 68 m_hosts.checkConsistency(); 69 String hostName = url.host() ;69 String hostName = url.host().toString(); 70 70 HostInformation* host = m_hosts.get(hostName); 71 71 if (!host && createHostPolicy == CreateIfNotFound) { -
trunk/Tools/ChangeLog
r232195 r232198 1 2018-05-25 Alex Christensen <achristensen@webkit.org> 2 3 URL::host should return a StringView to reduce allocations 4 https://bugs.webkit.org/show_bug.cgi?id=185986 5 6 Reviewed by Geoff Garen. 7 8 * TestWebKitAPI/Tests/WebCore/URL.cpp: 9 (TestWebKitAPI::TEST_F): 10 * TestWebKitAPI/Tests/WebCore/URLParser.cpp: 11 (TestWebKitAPI::eq): 12 * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm: 13 (TestWebKitAPI::SSLKeyGeneratorTest::TearDown): 14 1 15 2018-05-25 Ms2ger <Ms2ger@igalia.com> 2 16 -
trunk/Tools/TestWebKitAPI/Tests/WebCore/URL.cpp
r229905 r232198 60 60 61 61 EXPECT_EQ(kurl.protocol() == "http", true); 62 EXPECT_EQ(String("www.example.com"), kurl.host() );62 EXPECT_EQ(String("www.example.com"), kurl.host().toString()); 63 63 EXPECT_TRUE(!!kurl.port()); 64 64 EXPECT_EQ(8080, kurl.port().value()); -
trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp
r224202 r232198 65 65 }; 66 66 67 static bool eq(const String& s1, const String& s2) 67 template<typename T, typename U> 68 bool eq(T&& s1, U&& s2) 68 69 { 69 70 EXPECT_STREQ(s1.utf8().data(), s2.utf8().data()); … … 91 92 auto url = URL(URL(), urlString); 92 93 93 EXPECT_TRUE(eq(parts.protocol, url.protocol() .toString()));94 EXPECT_TRUE(eq(parts.protocol, url.protocol())); 94 95 EXPECT_TRUE(eq(parts.user, url.user())); 95 96 EXPECT_TRUE(eq(parts.password, url.pass())); … … 118 119 auto url = URL(URL(URL(), baseURLString), urlString); 119 120 120 EXPECT_TRUE(eq(parts.protocol, url.protocol() .toString()));121 EXPECT_TRUE(eq(parts.protocol, url.protocol())); 121 122 EXPECT_TRUE(eq(parts.user, url.user())); 122 123 EXPECT_TRUE(eq(parts.password, url.pass())); … … 147 148 auto url = URL(URL(), urlString); 148 149 149 EXPECT_TRUE(eq(partsNew.protocol, url.protocol() .toString()));150 EXPECT_TRUE(eq(partsNew.protocol, url.protocol())); 150 151 EXPECT_TRUE(eq(partsNew.user, url.user())); 151 152 EXPECT_TRUE(eq(partsNew.password, url.pass())); … … 176 177 auto url = URL(URL(URL(), baseURLString), urlString); 177 178 178 EXPECT_TRUE(eq(partsNew.protocol, url.protocol() .toString()));179 EXPECT_TRUE(eq(partsNew.protocol, url.protocol())); 179 180 EXPECT_TRUE(eq(partsNew.user, url.user())); 180 181 EXPECT_TRUE(eq(partsNew.password, url.pass())); … … 214 215 URLParser parser(urlString, { }, encoding); 215 216 auto url = parser.result(); 216 EXPECT_TRUE(eq(parts.protocol, url.protocol() .toString()));217 EXPECT_TRUE(eq(parts.protocol, url.protocol())); 217 218 EXPECT_TRUE(eq(parts.user, url.user())); 218 219 EXPECT_TRUE(eq(parts.password, url.pass())); … … 240 241 URLParser parser(urlString, baseParser.result(), encoding); 241 242 auto url = parser.result(); 242 EXPECT_TRUE(eq(parts.protocol, url.protocol() .toString()));243 EXPECT_TRUE(eq(parts.protocol, url.protocol())); 243 244 EXPECT_TRUE(eq(parts.user, url.user())); 244 245 EXPECT_TRUE(eq(parts.password, url.pass())); -
trunk/Tools/TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm
r231024 r232198 84 84 (id)kSecClass: (id)kSecClassKey, 85 85 (id)kSecAttrKeyClass: (id)kSecAttrKeyClassPrivate, 86 (id)kSecAttrLabel: WebCore::keygenKeychainItemName(url.host() ),86 (id)kSecAttrLabel: WebCore::keygenKeychainItemName(url.host().toString()), 87 87 }); 88 88 SecItemDelete((__bridge CFDictionaryRef) @{ 89 89 (id)kSecClass: (id)kSecClassKey, 90 90 (id)kSecAttrKeyClass: (id)kSecAttrKeyClassPublic, 91 (id)kSecAttrLabel: WebCore::keygenKeychainItemName(url.host() ),91 (id)kSecAttrLabel: WebCore::keygenKeychainItemName(url.host().toString()), 92 92 }); 93 93 }
Note:
See TracChangeset
for help on using the changeset viewer.