Title: [224954] trunk/Source/WebCore
- Revision
- 224954
- Author
- commit-qu...@webkit.org
- Date
- 2017-11-16 18:29:04 -0800 (Thu, 16 Nov 2017)
Log Message
FetchLoader should unregister its blob URL
https://bugs.webkit.org/show_bug.cgi?id=179768
Patch by Youenn Fablet <you...@apple.com> on 2017-11-16
Reviewed by Alex Christensen.
No observable change.
Keep the blob URL used for reading and unregister it in destructor.
* Modules/fetch/FetchLoader.cpp:
(WebCore::FetchLoader::~FetchLoader):
(WebCore::FetchLoader::start):
* Modules/fetch/FetchLoader.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (224953 => 224954)
--- trunk/Source/WebCore/ChangeLog 2017-11-17 02:24:53 UTC (rev 224953)
+++ trunk/Source/WebCore/ChangeLog 2017-11-17 02:29:04 UTC (rev 224954)
@@ -1,3 +1,19 @@
+2017-11-16 Youenn Fablet <you...@apple.com>
+
+ FetchLoader should unregister its blob URL
+ https://bugs.webkit.org/show_bug.cgi?id=179768
+
+ Reviewed by Alex Christensen.
+
+ No observable change.
+
+ Keep the blob URL used for reading and unregister it in destructor.
+
+ * Modules/fetch/FetchLoader.cpp:
+ (WebCore::FetchLoader::~FetchLoader):
+ (WebCore::FetchLoader::start):
+ * Modules/fetch/FetchLoader.h:
+
2017-11-16 Nan Wang <n_w...@apple.com>
AX: AOM: Implement string type properties
Modified: trunk/Source/WebCore/Modules/fetch/FetchLoader.cpp (224953 => 224954)
--- trunk/Source/WebCore/Modules/fetch/FetchLoader.cpp 2017-11-17 02:24:53 UTC (rev 224953)
+++ trunk/Source/WebCore/Modules/fetch/FetchLoader.cpp 2017-11-17 02:29:04 UTC (rev 224954)
@@ -45,17 +45,23 @@
namespace WebCore {
+FetchLoader::~FetchLoader()
+{
+ if (!m_urlForReading.isEmpty())
+ ThreadableBlobRegistry::unregisterBlobURL(m_urlForReading);
+}
+
void FetchLoader::start(ScriptExecutionContext& context, const Blob& blob)
{
- auto urlForReading = BlobURL::createPublicURL(context.securityOrigin());
- if (urlForReading.isEmpty()) {
+ m_urlForReading = BlobURL::createPublicURL(context.securityOrigin());
+ if (m_urlForReading.isEmpty()) {
m_client.didFail({ errorDomainWebKitInternal, 0, URL(), ASCIILiteral("Could not create URL for Blob") });
return;
}
- ThreadableBlobRegistry::registerBlobURL(context.securityOrigin(), urlForReading, blob.url());
+ ThreadableBlobRegistry::registerBlobURL(context.securityOrigin(), m_urlForReading, blob.url());
- ResourceRequest request(urlForReading);
+ ResourceRequest request(m_urlForReading);
request.setInitiatorIdentifier(context.resourceRequestIdentifier());
request.setHTTPMethod("GET");
Modified: trunk/Source/WebCore/Modules/fetch/FetchLoader.h (224953 => 224954)
--- trunk/Source/WebCore/Modules/fetch/FetchLoader.h 2017-11-17 02:24:53 UTC (rev 224953)
+++ trunk/Source/WebCore/Modules/fetch/FetchLoader.h 2017-11-17 02:29:04 UTC (rev 224954)
@@ -42,6 +42,7 @@
class FetchLoader final : public ThreadableLoaderClient {
public:
FetchLoader(FetchLoaderClient&, FetchBodyConsumer*);
+ ~FetchLoader();
RefPtr<SharedBuffer> startStreaming();
@@ -63,6 +64,7 @@
RefPtr<ThreadableLoader> m_loader;
FetchBodyConsumer* m_consumer;
bool m_isStarted { false };
+ URL m_urlForReading;
};
} // namespace WebCore
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes