Changeset 90807 in webkit
- Timestamp:
- Jul 11, 2011 9:54:54 PM (13 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r90800 r90807 1 2011-06-23 Pratik Solanki <psolanki@apple.com> 2 3 Reviewed by David Kilzer. 4 5 Add NSURLRequest wrapper in ResourceRequest when USE(CFNETWORK) is enabled 6 https://bugs.webkit.org/show_bug.cgi?id=63276 7 8 When USE(CFNETWORK) is enabled on Mac, keep an NSURLRequest object along with the 9 CFURLRequestRef so that WebKit can continue using the NSURLRequest. 10 11 No new tests because no change in functionality and option is not enabled on Mac. 12 13 * platform/network/cf/ResourceRequest.h: 14 (WebCore::ResourceRequest::updateNSURLRequest): 15 (WebCore::ResourceRequest::ResourceRequest): 16 * platform/network/cf/ResourceRequestCFNet.cpp: 17 (WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction): 18 (WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction): 19 (WebCore::ResourceRequest::doUpdatePlatformRequest): 20 (WebCore::ResourceRequest::applyWebArchiveHackForMail): 21 * platform/network/mac/ResourceRequestMac.mm: 22 (WebCore::ResourceRequest::nsURLRequest): 23 (WebCore::ResourceRequest::ResourceRequest): 24 (WebCore::ResourceRequest::updateNSURLRequest): 25 1 26 2011-07-11 Ryosuke Niwa <rniwa@webkit.org> 2 27 -
trunk/Source/WebCore/platform/network/cf/ResourceRequest.h
r88398 r90807 33 33 #if USE(CFNETWORK) 34 34 typedef const struct _CFURLRequest* CFURLRequestRef; 35 #else 35 #endif 36 36 37 #ifdef __OBJC__ 37 38 @class NSURLRequest; 38 39 #else 39 40 class NSURLRequest; 40 #endif41 41 #endif 42 42 … … 73 73 74 74 #if USE(CFNETWORK) 75 #if PLATFORM(MAC) 76 ResourceRequest(NSURLRequest *); 77 void updateNSURLRequest(); 78 #endif 79 75 80 ResourceRequest(CFURLRequestRef cfRequest) 76 81 : ResourceRequestBase() 77 , m_cfRequest(cfRequest) { } 82 , m_cfRequest(cfRequest) 83 { 84 #if PLATFORM(MAC) 85 updateNSURLRequest(); 86 #endif 87 } 88 78 89 79 90 CFURLRequestRef cfURLRequest() const; 80 91 #else 81 ResourceRequest(NSURLRequest *nsRequest)92 ResourceRequest(NSURLRequest *nsRequest) 82 93 : ResourceRequestBase() 83 94 , m_nsRequest(nsRequest) { } 84 95 96 #endif 97 98 #if PLATFORM(MAC) 85 99 void applyWebArchiveHackForMail(); 86 NSURLRequest *nsURLRequest() const;100 NSURLRequest *nsURLRequest() const; 87 101 #endif 88 102 … … 109 123 #if USE(CFNETWORK) 110 124 RetainPtr<CFURLRequestRef> m_cfRequest; 111 #else 125 #endif 126 #if PLATFORM(MAC) 112 127 RetainPtr<NSURLRequest> m_nsRequest; 113 128 #endif -
trunk/Source/WebCore/platform/network/cf/ResourceRequestCFNet.cpp
r86778 r90807 30 30 #include "ResourceRequest.h" 31 31 32 #if USE(CFNETWORK) 33 #include "FormDataStreamCFNet.h" 34 #include <CFNetwork/CFURLRequestPriv.h> 35 #endif 36 32 37 #if PLATFORM(MAC) 33 38 #include "ResourceLoadPriority.h" 34 39 #include "WebCoreSystemInterface.h" 35 #endif 36 37 #if USE(CFNETWORK) 38 #include "FormDataStreamCFNet.h" 39 #include <CFNetwork/CFURLRequestPriv.h> 40 #include <dlfcn.h> 41 #endif 42 43 #if PLATFORM(WIN) 40 44 #include <WebKitSystemInterface/WebKitSystemInterface.h> 41 45 #endif … … 50 54 typedef CFArrayRef (*CFURLRequestCopyContentDispositionEncodingFallbackArrayFunction)(CFURLRequestRef); 51 55 56 #if PLATFORM(WIN) 52 57 static HMODULE findCFNetworkModule() 53 58 { … … 68 73 return reinterpret_cast<CFURLRequestCopyContentDispositionEncodingFallbackArrayFunction>(GetProcAddress(findCFNetworkModule(), "_CFURLRequestCopyContentDispositionEncodingFallbackArray")); 69 74 } 75 #elif PLATFORM(MAC) 76 static CFURLRequestSetContentDispositionEncodingFallbackArrayFunction findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction() 77 { 78 return reinterpret_cast<CFURLRequestSetContentDispositionEncodingFallbackArrayFunction>(dlsym(RTLD_DEFAULT, "_CFURLRequestSetContentDispositionEncodingFallbackArray")); 79 } 80 81 static CFURLRequestCopyContentDispositionEncodingFallbackArrayFunction findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction() 82 { 83 return reinterpret_cast<CFURLRequestCopyContentDispositionEncodingFallbackArrayFunction>(dlsym(RTLD_DEFAULT, "_CFURLRequestCopyContentDispositionEncodingFallbackArray")); 84 } 85 #endif 70 86 71 87 static void setContentDispositionEncodingFallbackArray(CFMutableURLRequestRef request, CFArrayRef fallbackArray) … … 160 176 161 177 m_cfRequest.adoptCF(cfRequest); 178 #if PLATFORM(MAC) 179 updateNSURLRequest(); 180 #endif 162 181 } 163 182 … … 219 238 #endif 220 239 240 #if PLATFORM(MAC) 241 void ResourceRequest::applyWebArchiveHackForMail() 242 { 243 // Hack because Mail checks for this property to detect data / archive loads 244 _CFURLRequestSetProtocolProperty(cfURLRequest(), CFSTR("WebDataRequest"), CFSTR("")); 245 } 246 #endif 247 221 248 #endif // USE(CFNETWORK) 222 249 -
trunk/Source/WebCore/platform/network/mac/ResourceRequestMac.mm
r89300 r90807 27 27 #import "ResourceRequest.h" 28 28 29 #if !USE(CFNETWORK)30 31 #import "WebCoreSystemInterface.h"32 33 29 #import "FormDataStreamMac.h" 34 30 #import "ResourceRequestCFNet.h" … … 43 39 + (void)setDefaultTimeoutInterval:(NSTimeInterval)seconds; 44 40 - (CFURLRequestRef)_CFURLRequest; 41 - (id)_initWithCFURLRequest:(CFURLRequestRef)request; 45 42 @end 46 43 … … 51 48 namespace WebCore { 52 49 53 NSURLRequest *ResourceRequest::nsURLRequest() const50 NSURLRequest *ResourceRequest::nsURLRequest() const 54 51 { 55 52 updatePlatformRequest(); … … 57 54 return [[m_nsRequest.get() retain] autorelease]; 58 55 } 56 57 #if USE(CFNETWORK) 58 59 ResourceRequest::ResourceRequest(NSURLRequest *nsRequest) 60 : ResourceRequestBase() 61 , m_cfRequest([nsRequest _CFURLRequest]) 62 , m_nsRequest(nsRequest) 63 { 64 } 65 66 void ResourceRequest::updateNSURLRequest() 67 { 68 if (m_cfRequest) 69 m_nsRequest.adoptNS([[NSURLRequest alloc] _initWithCFURLRequest:m_cfRequest.get()]); 70 } 71 72 #else 59 73 60 74 void ResourceRequest::doUpdateResourceRequest() … … 178 192 #endif 179 193 194 #endif // USE(CFNETWORK) 195 180 196 static bool initQuickLookResourceCachingQuirks() 181 197 { … … 205 221 } // namespace WebCore 206 222 207 #endif // !USE(CFNETWORK)
Note: See TracChangeset
for help on using the changeset viewer.