https://bugs.webkit.org/show_bug.cgi?id=181376
Reviewed by Carlos Garcia Campos.
This code path is no longer used now that the GStreamer HTTP
source element uses data coming directly from the network process.
* SourcesGTK.txt:
* SourcesWPE.txt:
* loader/MediaResourceLoader.cpp:
(WebCore::MediaResource::getOrCreateReadBuffer): Deleted.
* loader/MediaResourceLoader.h:
* loader/SubresourceLoader.h:
* loader/cache/CachedRawResource.h:
* loader/cache/CachedRawResourceClient.h:
(WebCore::CachedRawResourceClient::finishedTimingForWorkerLoad):
(WebCore::CachedRawResourceClient::getOrCreateReadBuffer): Deleted.
* loader/cache/CachedResource.h:
(WebCore::CachedResource::getOrCreateReadBuffer): Deleted.
* loader/soup/CachedRawResourceSoup.cpp: Removed.
* loader/soup/SubresourceLoaderSoup.cpp: Removed.
* platform/graphics/PlatformMediaResourceLoader.h:
(WebCore::PlatformMediaResourceClient::loadFinished):
(WebCore::PlatformMediaResourceClient::getOrCreateReadBuffer): Deleted.
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(CachedResourceStreamingClient::getOrCreateReadBuffer): Deleted.
* platform/network/ResourceHandleClient.h:
(WebCore::ResourceHandleClient::getOrCreateReadBuffer): Deleted.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::ensureReadBuffer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@226508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2018-01-08 Philippe Normand <pnormand@igalia.com>
+
+ [GStreamer][Soup] Remove dead getCreateOrReadBuffer code path
+ https://bugs.webkit.org/show_bug.cgi?id=181376
+
+ Reviewed by Carlos Garcia Campos.
+
+ This code path is no longer used now that the GStreamer HTTP
+ source element uses data coming directly from the network process.
+
+ * SourcesGTK.txt:
+ * SourcesWPE.txt:
+ * loader/MediaResourceLoader.cpp:
+ (WebCore::MediaResource::getOrCreateReadBuffer): Deleted.
+ * loader/MediaResourceLoader.h:
+ * loader/SubresourceLoader.h:
+ * loader/cache/CachedRawResource.h:
+ * loader/cache/CachedRawResourceClient.h:
+ (WebCore::CachedRawResourceClient::finishedTimingForWorkerLoad):
+ (WebCore::CachedRawResourceClient::getOrCreateReadBuffer): Deleted.
+ * loader/cache/CachedResource.h:
+ (WebCore::CachedResource::getOrCreateReadBuffer): Deleted.
+ * loader/soup/CachedRawResourceSoup.cpp: Removed.
+ * loader/soup/SubresourceLoaderSoup.cpp: Removed.
+ * platform/graphics/PlatformMediaResourceLoader.h:
+ (WebCore::PlatformMediaResourceClient::loadFinished):
+ (WebCore::PlatformMediaResourceClient::getOrCreateReadBuffer): Deleted.
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (CachedResourceStreamingClient::getOrCreateReadBuffer): Deleted.
+ * platform/network/ResourceHandleClient.h:
+ (WebCore::ResourceHandleClient::getOrCreateReadBuffer): Deleted.
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandle::ensureReadBuffer):
+
2018-01-08 Zan Dobersek <zdobersek@igalia.com> and Carlos Garcia Campos <cgarcia@igalia.com>
[GStreamer] use FastMalloc-based GstAllocator
editing/atk/FrameSelectionAtk.cpp
-loader/soup/CachedRawResourceSoup.cpp
-loader/soup/SubresourceLoaderSoup.cpp
-
page/linux/ResourceUsageOverlayLinux.cpp
page/linux/ResourceUsageThreadLinux.cpp
editing/wpe/EditorWPE.cpp
-loader/soup/CachedRawResourceSoup.cpp
-loader/soup/SubresourceLoaderSoup.cpp
-
page/linux/ResourceUsageOverlayLinux.cpp
page/linux/ResourceUsageThreadLinux.cpp
stop();
}
-#if USE(SOUP)
-char* MediaResource::getOrCreateReadBuffer(CachedResource& resource, size_t requestedSize, size_t& actualSize)
-{
- ASSERT_UNUSED(resource, &resource == m_resource);
- return m_client ? m_client->getOrCreateReadBuffer(*this, requestedSize, actualSize) : nullptr;
-}
-#endif
-
} // namespace WebCore
#endif
void dataSent(CachedResource&, unsigned long long, unsigned long long) override;
void dataReceived(CachedResource&, const char*, int) override;
void notifyFinished(CachedResource&) override;
-#if USE(SOUP)
- char* getOrCreateReadBuffer(CachedResource&, size_t /*requestedSize*/, size_t& /*actualSize*/) override;
-#endif
private:
MediaResource(MediaResourceLoader&, CachedResourceHandle<CachedRawResource>);
void releaseResources() override;
-#if USE(SOUP)
- char* getOrCreateReadBuffer(size_t requestedSize, size_t& actualSize) override;
-#endif
-
bool checkForHTTPStatusCodeError();
bool checkResponseCrossOriginAccessControl(const ResourceResponse&, String&);
bool checkRedirectionCrossOriginAccessControl(const ResourceRequest& previousRequest, const ResourceResponse&, ResourceRequest& newRequest, String&);
std::optional<SharedBufferDataView> calculateIncrementalDataChunk(const SharedBuffer*) const;
void notifyClientsDataWasReceived(const char* data, unsigned length);
-#if USE(SOUP)
- char* getOrCreateReadBuffer(size_t requestedSize, size_t& actualSize) override;
-#endif
-
unsigned long m_identifier;
bool m_allowEncodedDataReplacement;
virtual void dataReceived(CachedResource&, const char* /* data */, int /* length */) { }
virtual void redirectReceived(CachedResource&, ResourceRequest&& request, const ResourceResponse&, CompletionHandler<void(ResourceRequest&&)>&& completionHandler) { completionHandler(WTFMove(request)); }
virtual void finishedTimingForWorkerLoad(CachedResource&, const ResourceTiming&) { }
-#if USE(SOUP)
- virtual char* getOrCreateReadBuffer(CachedResource&, size_t /* requestedSize */, size_t& /* actualSize */) { return nullptr; }
-#endif
};
}
WEBCORE_EXPORT void tryReplaceEncodedData(SharedBuffer&);
#endif
-#if USE(SOUP)
- virtual char* getOrCreateReadBuffer(size_t /* requestedSize */, size_t& /* actualSize */) { return nullptr; }
-#endif
-
unsigned long identifierForLoadWithoutResourceLoader() const { return m_identifierForLoadWithoutResourceLoader; }
static ResourceLoadPriority defaultPriorityForResourceType(Type);
+++ /dev/null
-/*
- * Copyright (C) 2013 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-
-#if USE(SOUP)
-
-#include "CachedRawResource.h"
-
-#include "CachedRawResourceClient.h"
-#include "CachedResourceClientWalker.h"
-
-namespace WebCore {
-
-char* CachedRawResource::getOrCreateReadBuffer(size_t requestedSize, size_t& actualSize)
-{
- CachedResourceClientWalker<CachedRawResourceClient> w(m_clients);
- while (CachedRawResourceClient* c = w.next()) {
- if (char* bufferPtr = c->getOrCreateReadBuffer(*this, requestedSize, actualSize))
- return bufferPtr;
- }
-
- return nullptr;
-}
-
-} // namespace WebCore
-
-#endif
+++ /dev/null
-/*
- * Copyright (C) 2013 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-
-#if USE(SOUP)
-
-#include "SubresourceLoader.h"
-
-#include "CachedResource.h"
-
-namespace WebCore {
-
-char* SubresourceLoader::getOrCreateReadBuffer(size_t requestedLength, size_t& actualLength)
-{
- return m_resource->getOrCreateReadBuffer(requestedLength, actualLength);
-}
-
-} // namespace WebCore
-
-#endif
virtual void accessControlCheckFailed(PlatformMediaResource&, const ResourceError&) { }
virtual void loadFailed(PlatformMediaResource&, const ResourceError&) { }
virtual void loadFinished(PlatformMediaResource&) { }
-#if USE(SOUP)
- virtual char* getOrCreateReadBuffer(PlatformMediaResource&, size_t /*requestedSize*/, size_t& /*actualSize*/) { return nullptr; };
-#endif
};
class PlatformMediaResourceLoader : public ThreadSafeRefCounted<PlatformMediaResourceLoader> {
CachedResourceStreamingClient(WebKitWebSrc*, ResourceRequest&&);
virtual ~CachedResourceStreamingClient();
private:
-#if USE(SOUP)
- char* getOrCreateReadBuffer(PlatformMediaResource&, size_t requestedSize, size_t& actualSize) override;
-#endif
// PlatformMediaResourceClient virtual methods.
void responseReceived(PlatformMediaResource&, const ResourceResponse&) override;
void dataReceived(PlatformMediaResource&, const char*, int) override;
CachedResourceStreamingClient::~CachedResourceStreamingClient() = default;
-#if USE(SOUP)
-char* CachedResourceStreamingClient::getOrCreateReadBuffer(PlatformMediaResource&, size_t requestedSize, size_t& actualSize)
-{
- WebKitWebSrc* src = WEBKIT_WEB_SRC(m_src.get());
- WebKitWebSrcPrivate* priv = src->priv;
-
- ASSERT(!priv->buffer);
-
- GstBuffer* buffer = gst_buffer_new_and_alloc(requestedSize);
-
- mapGstBuffer(buffer, GST_MAP_WRITE);
-
- priv->buffer = adoptGRef(buffer);
-
- actualSize = gst_buffer_get_size(buffer);
- return getGstBufferDataPointer(buffer);
-}
-#endif
-
void CachedResourceStreamingClient::responseReceived(PlatformMediaResource&, const ResourceResponse& response)
{
WebKitWebSrc* src = WEBKIT_WEB_SRC(m_src.get());
WEBCORE_EXPORT virtual void willCacheResponseAsync(ResourceHandle*, NSCachedURLResponse *);
#endif
-#if USE(SOUP)
- virtual char* getOrCreateReadBuffer(size_t /*requestedLength*/, size_t& /*actualLength*/) { return 0; }
-#endif
-
virtual bool shouldUseCredentialStorage(ResourceHandle*) { return false; }
virtual void didReceiveAuthenticationChallenge(ResourceHandle*, const AuthenticationChallenge&) { }
virtual void receivedCancellation(ResourceHandle*, const AuthenticationChallenge&) { }
if (d->m_soupBuffer)
return;
- // Non-NetworkProcess clients are able to give a buffer to the ResourceHandle to avoid expensive copies. If
- // we do get a buffer from the client, we want the client to free it, so we create the soup buffer with
- // SOUP_MEMORY_TEMPORARY.
- size_t bufferSize;
- char* bufferFromClient = client()->getOrCreateReadBuffer(gDefaultReadBufferSize, bufferSize);
- if (bufferFromClient)
- d->m_soupBuffer.reset(soup_buffer_new(SOUP_MEMORY_TEMPORARY, bufferFromClient, bufferSize));
- else {
- auto* buffer = static_cast<uint8_t*>(fastMalloc(gDefaultReadBufferSize));
- d->m_soupBuffer.reset(soup_buffer_new_with_owner(buffer, gDefaultReadBufferSize, buffer, fastFree));
- }
+
+ auto* buffer = static_cast<uint8_t*>(fastMalloc(gDefaultReadBufferSize));
+ d->m_soupBuffer.reset(soup_buffer_new_with_owner(buffer, gDefaultReadBufferSize, buffer, fastFree));
ASSERT(d->m_soupBuffer);
}