| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 3 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
| 7 * are met: | 7 * are met: |
| 8 * | 8 * |
| 9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 530 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 541 | 541 |
| 542 documentLoader()->timing()->setResponseEnd(finishTime ? finishTime : (m_time
OfLastDataReceived ? m_timeOfLastDataReceived : monotonicallyIncreasingTime())); | 542 documentLoader()->timing()->setResponseEnd(finishTime ? finishTime : (m_time
OfLastDataReceived ? m_timeOfLastDataReceived : monotonicallyIncreasingTime())); |
| 543 documentLoader()->finishedLoading(); | 543 documentLoader()->finishedLoading(); |
| 544 | 544 |
| 545 dl->applicationCacheHost()->finishedLoadingMainResource(); | 545 dl->applicationCacheHost()->finishedLoadingMainResource(); |
| 546 } | 546 } |
| 547 | 547 |
| 548 void MainResourceLoader::notifyFinished(CachedResource* resource) | 548 void MainResourceLoader::notifyFinished(CachedResource* resource) |
| 549 { | 549 { |
| 550 ASSERT_UNUSED(resource, m_resource == resource); | 550 ASSERT_UNUSED(resource, m_resource == resource); |
| 551 ASSERT(m_resource); | 551 if (!m_resource || (!m_resource->errorOccurred() && !m_resource->wasCanceled
())) { |
| 552 if (!m_resource->errorOccurred() && !m_resource->wasCanceled()) { | |
| 553 didFinishLoading(m_resource->loadFinishTime()); | 552 didFinishLoading(m_resource->loadFinishTime()); |
| 554 return; | 553 return; |
| 555 } | 554 } |
| 556 | 555 |
| 557 if (m_documentLoader->request().cachePolicy() == ReturnCacheDataDontLoad &&
!m_resource->wasCanceled()) { | |
| 558 frameLoader()->retryAfterFailedCacheOnlyMainResourceLoad(); | |
| 559 return; | |
| 560 } | |
| 561 | |
| 562 const ResourceError& error = m_resource->resourceError(); | 556 const ResourceError& error = m_resource->resourceError(); |
| 563 if (documentLoader()->applicationCacheHost()->maybeLoadFallbackForMainError(
request(), error)) | 557 if (documentLoader()->applicationCacheHost()->maybeLoadFallbackForMainError(
request(), error)) |
| 564 return; | 558 return; |
| 565 | 559 |
| 566 // There is a bug in CFNetwork where callbacks can be dispatched even when l
oads are deferred. | 560 // There is a bug in CFNetwork where callbacks can be dispatched even when l
oads are deferred. |
| 567 // See <rdar://problem/6304600> for more details. | 561 // See <rdar://problem/6304600> for more details. |
| 568 #if !USE(CF) | 562 #if !USE(CF) |
| 569 ASSERT(!defersLoading()); | 563 ASSERT(!defersLoading()); |
| 570 #endif | 564 #endif |
| 571 | 565 |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 695 { | 689 { |
| 696 ASSERT(!m_substituteDataLoadIdentifier || !loader() || !loader()->identifier
()); | 690 ASSERT(!m_substituteDataLoadIdentifier || !loader() || !loader()->identifier
()); |
| 697 if (m_substituteDataLoadIdentifier) | 691 if (m_substituteDataLoadIdentifier) |
| 698 return m_substituteDataLoadIdentifier; | 692 return m_substituteDataLoadIdentifier; |
| 699 if (ResourceLoader* resourceLoader = loader()) | 693 if (ResourceLoader* resourceLoader = loader()) |
| 700 return resourceLoader->identifier(); | 694 return resourceLoader->identifier(); |
| 701 return 0; | 695 return 0; |
| 702 } | 696 } |
| 703 | 697 |
| 704 } | 698 } |
| OLD | NEW |