Changeset 195393 in webkit
- Timestamp:
- Jan 20, 2016, 5:49:12 PM (11 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r195392 r195393 1 2016-01-20 David Kilzer <ddkilzer@apple.com> 2 3 ResourceHandleCFURLConnectionDelegateWithOperationQueue delegate methods don't NULL-check m_handle->client() 4 <https://webkit.org/b/152675> 5 <rdar://problem/24034044> 6 7 Reviewed by Brent Fulgham. 8 9 * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp: 10 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse): 11 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData): 12 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading): 13 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail): 14 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse): 15 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData): 16 (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveDataArray): 17 - Add NULL check for m_handle->client() as is done in the 18 WebCoreResourceHandleAsOperationQueueDelegate class in 19 WebCoreResourceHandleAsOperationQueueDelegate.mm. (The NULL 20 check for -connection:didReceiveResponse: is currently 21 missing, but there are crashes there, too, that are covered by 22 Bug 152673.) 23 1 24 2016-01-20 Said Abou-Hallawa <sabouhallawa@apple.com> 2 25 -
trunk/Source/WebCore/platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp
r194380 r195393 134 134 135 135 dispatch_async(dispatch_get_main_queue(), ^{ 136 if (!protector->hasHandle() ) {136 if (!protector->hasHandle() || !m_handle->client()) { 137 137 continueDidReceiveResponse(); 138 138 return; … … 173 173 174 174 dispatch_async(dispatch_get_main_queue(), ^{ 175 if (protector->hasHandle() ) {175 if (protector->hasHandle() && m_handle->client()) { 176 176 LOG(Network, "CFNet - ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData(handle=%p) (%s)", m_handle, m_handle->firstRequest().url().string().utf8().data()); 177 177 … … 189 189 RefPtr<ResourceHandleCFURLConnectionDelegateWithOperationQueue> protector(this); 190 190 dispatch_async(dispatch_get_main_queue(), ^{ 191 if (!protector->hasHandle() )191 if (!protector->hasHandle() || !m_handle->client()) 192 192 return; 193 193 … … 205 205 CFRetain(error); 206 206 dispatch_async(dispatch_get_main_queue(), ^{ 207 if (protector->hasHandle() ) {207 if (protector->hasHandle() && m_handle->client()) { 208 208 LOG(Network, "CFNet - ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail(handle=%p) (%s)", m_handle, m_handle->firstRequest().url().string().utf8().data()); 209 209 … … 222 222 223 223 dispatch_async(dispatch_get_main_queue(), ^{ 224 if (!protector->hasHandle() ) {224 if (!protector->hasHandle() || !m_handle->client()) { 225 225 continueWillCacheResponse(nullptr); 226 226 return; … … 258 258 RefPtr<ResourceHandleCFURLConnectionDelegateWithOperationQueue> protector(this); 259 259 dispatch_async(dispatch_get_main_queue(), ^{ 260 if (!protector->hasHandle() )260 if (!protector->hasHandle() || !m_handle->client()) 261 261 return; 262 262 … … 310 310 CFRetain(dataArray); 311 311 dispatch_async(dispatch_get_main_queue(), ^{ 312 if (protector->hasHandle() ) {312 if (protector->hasHandle() && m_handle->client()) { 313 313 LOG(Network, "CFNet - ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData(handle=%p) (%s)", m_handle, m_handle->firstRequest().url().string().utf8().data()); 314 314
Note:
See TracChangeset
for help on using the changeset viewer.