void ResourceRequestBase::setAsIsolatedCopy(const ResourceRequest& other) { setURL(other.url().isolatedCopy()); setCachePolicy(other.cachePolicy()); setTimeoutInterval(other.timeoutInterval()); setFirstPartyForCookies(other.firstPartyForCookies().isolatedCopy()); setHTTPMethod(other.httpMethod().isolatedCopy()); setPriority(other.priority()); setRequester(other.requester()); updateResourceRequest(); m_httpHeaderFields = other.httpHeaderFields().isolatedCopy(); size_t encodingCount = other.m_responseContentDispositionEncodingFallbackArray.size(); if (encodingCount > 0) { String encoding1 = other.m_responseContentDispositionEncodingFallbackArray[0].isolatedCopy(); String encoding2; String encoding3; if (encodingCount > 1) { encoding2 = other.m_responseContentDispositionEncodingFallbackArray[1].isolatedCopy(); if (encodingCount > 2) encoding3 = other.m_responseContentDispositionEncodingFallbackArray[2].isolatedCopy(); } ASSERT(encodingCount <= 3); setResponseContentDispositionEncodingFallbackArray(encoding1, encoding2, encoding3); } if (other.m_httpBody) setHTTPBody(other.m_httpBody->isolatedCopy()); setAllowCookies(other.m_allowCookies); const_cast<ResourceRequest&>(asResourceRequest()).doPlatformSetAsIsolatedCopy(other); }
ResourceRequest::ResourceRequest(CrossThreadResourceRequestData* data) : ResourceRequest() { setURL(data->m_url); setCachePolicy(data->m_cachePolicy); setTimeoutInterval(data->m_timeoutInterval); setFirstPartyForCookies(data->m_firstPartyForCookies); setRequestorOrigin(data->m_requestorOrigin); setHTTPMethod(AtomicString(data->m_httpMethod)); setPriority(data->m_priority, data->m_intraPriorityValue); m_httpHeaderFields.adopt(data->m_httpHeaders.release()); setHTTPBody(data->m_httpBody); setAllowStoredCredentials(data->m_allowStoredCredentials); setReportUploadProgress(data->m_reportUploadProgress); setHasUserGesture(data->m_hasUserGesture); setDownloadToFile(data->m_downloadToFile); setUseStreamOnResponse(data->m_useStreamOnResponse); setSkipServiceWorker(data->m_skipServiceWorker); setShouldResetAppCache(data->m_shouldResetAppCache); setRequestorID(data->m_requestorID); setRequestorProcessID(data->m_requestorProcessID); setAppCacheHostID(data->m_appCacheHostID); setRequestContext(data->m_requestContext); setFrameType(data->m_frameType); setFetchRequestMode(data->m_fetchRequestMode); setFetchCredentialsMode(data->m_fetchCredentialsMode); setFetchRedirectMode(data->m_fetchRedirectMode); setLoFiState(data->m_loFiState); m_referrerPolicy = data->m_referrerPolicy; m_didSetHTTPReferrer = data->m_didSetHTTPReferrer; m_checkForBrowserSideNavigation = data->m_checkForBrowserSideNavigation; m_uiStartTime = data->m_uiStartTime; m_isExternalRequest = data->m_isExternalRequest; m_inputPerfMetricReportPolicy = data->m_inputPerfMetricReportPolicy; m_followedRedirect = data->m_followedRedirect; }