Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(41)

Unified Diff: third_party/WebKit/Source/core/fetch/Resource.cpp

Issue 2258743002: Reserve Vector's capacity manually in CachedMetadata (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/fetch/Resource.cpp
diff --git a/third_party/WebKit/Source/core/fetch/Resource.cpp b/third_party/WebKit/Source/core/fetch/Resource.cpp
index 31065b424de1b0d4ae6081c43870045d0a58e1d1..3d1db657b2b407e795914f5a0061fa9f05fcdf69 100644
--- a/third_party/WebKit/Source/core/fetch/Resource.cpp
+++ b/third_party/WebKit/Source/core/fetch/Resource.cpp
@@ -49,6 +49,7 @@
#include "wtf/text/StringBuilder.h"
#include <algorithm>
#include <memory>
+#include <stdint.h>
namespace blink {
@@ -102,9 +103,9 @@ public:
}
~CachedMetadataHandlerImpl() override {}
DECLARE_VIRTUAL_TRACE();
- void setCachedMetadata(unsigned, const char*, size_t, CacheType) override;
+ void setCachedMetadata(uint32_t, const char*, size_t, CacheType) override;
void clearCachedMetadata(CacheType) override;
- PassRefPtr<CachedMetadata> cachedMetadata(unsigned) const override;
+ PassRefPtr<CachedMetadata> cachedMetadata(uint32_t) const override;
String encoding() const override;
// Sets the serialized metadata retrieved from the platform's cache.
void setSerializedCachedMetadata(const char*, size_t);
@@ -131,7 +132,7 @@ DEFINE_TRACE(Resource::CachedMetadataHandlerImpl)
CachedMetadataHandler::trace(visitor);
}
-void Resource::CachedMetadataHandlerImpl::setCachedMetadata(unsigned dataTypeID, const char* data, size_t size, CachedMetadataHandler::CacheType cacheType)
+void Resource::CachedMetadataHandlerImpl::setCachedMetadata(uint32_t dataTypeID, const char* data, size_t size, CachedMetadataHandler::CacheType cacheType)
{
// Currently, only one type of cached metadata per resource is supported.
// If the need arises for multiple types of metadata per resource this could
@@ -149,7 +150,7 @@ void Resource::CachedMetadataHandlerImpl::clearCachedMetadata(CachedMetadataHand
sendToPlatform();
}
-PassRefPtr<CachedMetadata> Resource::CachedMetadataHandlerImpl::cachedMetadata(unsigned dataTypeID) const
+PassRefPtr<CachedMetadata> Resource::CachedMetadataHandlerImpl::cachedMetadata(uint32_t dataTypeID) const
{
if (!m_cachedMetadata || m_cachedMetadata->dataTypeID() != dataTypeID)
return nullptr;
@@ -167,13 +168,13 @@ void Resource::CachedMetadataHandlerImpl::setSerializedCachedMetadata(const char
// If this triggers, it indicates an efficiency problem which is most
// likely unexpected in code designed to improve performance.
ASSERT(!m_cachedMetadata);
- m_cachedMetadata = CachedMetadata::deserialize(data, size);
+ m_cachedMetadata = CachedMetadata::createFromSerializedData(data, size);
}
void Resource::CachedMetadataHandlerImpl::sendToPlatform()
{
if (m_cachedMetadata) {
- const Vector<char>& serializedData = m_cachedMetadata->serialize();
+ const Vector<char>& serializedData = m_cachedMetadata->serializedData();
Platform::current()->cacheMetadata(response().url(), response().responseTime(), serializedData.data(), serializedData.size());
} else {
Platform::current()->cacheMetadata(response().url(), response().responseTime(), nullptr, 0);
@@ -219,7 +220,7 @@ void Resource::ServiceWorkerResponseCachedMetadataHandler::sendToPlatform()
return;
if (m_cachedMetadata) {
- const Vector<char>& serializedData = m_cachedMetadata->serialize();
+ const Vector<char>& serializedData = m_cachedMetadata->serializedData();
Platform::current()->cacheMetadataInCacheStorage(response().url(), response().responseTime(), serializedData.data(), serializedData.size(), WebSecurityOrigin(m_securityOrigin), response().cacheStorageCacheName());
} else {
Platform::current()->cacheMetadataInCacheStorage(response().url(), response().responseTime(), nullptr, 0, WebSecurityOrigin(m_securityOrigin), response().cacheStorageCacheName());

Powered by Google App Engine
This is Rietveld 408576698