Created
November 24, 2021 14:41
-
-
Save dpino/1295c27eed4382232c07235f32a06be3 to your computer and use it in GitHub Desktop.
Patch build fixes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
From 0f93b285725b0ac8a77a75de0a9d7d0ded94074b Mon Sep 17 00:00:00 2001 | |
From: Diego Pino Garcia <[email protected]> | |
Date: Wed, 24 Nov 2021 14:38:36 +0000 | |
Subject: [PATCH] Patch build fixes | |
--- | |
.../loader/archive/mhtml/MHTMLParser.cpp | 2 +- | |
.../platform/SharedBufferChunkReader.h | 2 ++ | |
Source/WebCore/platform/gtk/SelectionData.h | 6 ++-- | |
.../ServiceWorkerSoftUpdateLoader.cpp | 2 +- | |
.../cache/NetworkCacheEntry.cpp | 2 +- | |
.../soup/NetworkDataTaskSoup.cpp | 2 +- | |
Source/WebKit/Platform/IPC/SharedBufferCopy.h | 2 +- | |
.../WebKit/Shared/gtk/ArgumentCodersGtk.cpp | 6 ++-- | |
Source/WebKit/UIProcess/WebURLSchemeTask.cpp | 2 +- | |
.../Tests/WebCore/SharedBuffer.cpp | 34 +++++++++---------- | |
10 files changed, 31 insertions(+), 29 deletions(-) | |
diff --git a/Source/WebCore/loader/archive/mhtml/MHTMLParser.cpp b/Source/WebCore/loader/archive/mhtml/MHTMLParser.cpp | |
index 35975d25754fd..7336b37de3bdd 100644 | |
--- a/Source/WebCore/loader/archive/mhtml/MHTMLParser.cpp | |
+++ b/Source/WebCore/loader/archive/mhtml/MHTMLParser.cpp | |
@@ -193,7 +193,7 @@ RefPtr<ArchiveResource> MHTMLParser::parseNextPart(const MIMEHeader& mimeHeader, | |
} | |
Vector<uint8_t> data; | |
- auto contiguousContent = content->data()->makeContiguous(); | |
+ auto contiguousContent = content->makeContiguous(); | |
switch (mimeHeader.contentTransferEncoding()) { | |
case MIMEHeader::Base64: { | |
auto decodedData = base64Decode(contiguousContent->data(), content->size()); | |
diff --git a/Source/WebCore/platform/SharedBufferChunkReader.h b/Source/WebCore/platform/SharedBufferChunkReader.h | |
index 73b2b6a78e056..99ba8bb6983db 100644 | |
--- a/Source/WebCore/platform/SharedBufferChunkReader.h | |
+++ b/Source/WebCore/platform/SharedBufferChunkReader.h | |
@@ -35,6 +35,8 @@ | |
#include <wtf/Vector.h> | |
#include <wtf/text/WTFString.h> | |
+#include "SharedBuffer.h" | |
+ | |
namespace WebCore { | |
class SharedBuffer; | |
diff --git a/Source/WebCore/platform/gtk/SelectionData.h b/Source/WebCore/platform/gtk/SelectionData.h | |
index cf2b51f6f0283..7e3b3632b90c6 100644 | |
--- a/Source/WebCore/platform/gtk/SelectionData.h | |
+++ b/Source/WebCore/platform/gtk/SelectionData.h | |
@@ -60,8 +60,8 @@ public: | |
void setCanSmartReplace(bool canSmartReplace) { m_canSmartReplace = canSmartReplace; } | |
bool canSmartReplace() const { return m_canSmartReplace; } | |
- void setCustomData(Ref<SharedBuffer>&& buffer) { m_customData = WTFMove(buffer); } | |
- SharedBuffer* customData() const { return m_customData.get(); } | |
+ void setCustomData(Ref<ContiguousSharedBuffer>&& buffer) { m_customData = WTFMove(buffer); } | |
+ ContiguousSharedBuffer* customData() const { return m_customData.get(); } | |
bool hasCustomData() const { return !!m_customData; } | |
void clearCustomData() { m_customData = nullptr; } | |
@@ -76,7 +76,7 @@ private: | |
Vector<String> m_filenames; | |
RefPtr<Image> m_image; | |
bool m_canSmartReplace { false }; | |
- RefPtr<SharedBuffer> m_customData; | |
+ RefPtr<ContiguousSharedBuffer> m_customData; | |
}; | |
} // namespace WebCore | |
diff --git a/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerSoftUpdateLoader.cpp b/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerSoftUpdateLoader.cpp | |
index 8ee112a9df828..94235348273e8 100644 | |
--- a/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerSoftUpdateLoader.cpp | |
+++ b/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerSoftUpdateLoader.cpp | |
@@ -187,7 +187,7 @@ void ServiceWorkerSoftUpdateLoader::didReceiveBuffer(Ref<SharedBuffer>&& buffer, | |
} | |
if (auto size = buffer->size()) | |
- m_script.append(m_decoder->decode(buffer->data(), size)); | |
+ m_script.append(m_decoder->decode(buffer->makeContiguous()->data(), size)); | |
} | |
void ServiceWorkerSoftUpdateLoader::didFinishLoading(const WebCore::NetworkLoadMetrics&) | |
diff --git a/Source/WebKit/NetworkProcess/cache/NetworkCacheEntry.cpp b/Source/WebKit/NetworkProcess/cache/NetworkCacheEntry.cpp | |
index ba39d9e2c26a0..8ec2a82724f33 100644 | |
--- a/Source/WebKit/NetworkProcess/cache/NetworkCacheEntry.cpp | |
+++ b/Source/WebKit/NetworkProcess/cache/NetworkCacheEntry.cpp | |
@@ -102,7 +102,7 @@ Storage::Record Entry::encodeAsStorageRecord() const | |
Data header(encoder.buffer(), encoder.bufferSize()); | |
Data body; | |
if (m_buffer) | |
- body = { m_buffer->data(), m_buffer->size() }; | |
+ body = { m_buffer->makeContiguous()->data(), m_buffer->size() }; | |
return { m_key, m_timeStamp, header, body, { } }; | |
} | |
diff --git a/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp b/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp | |
index b20aa51a0f84f..f633fffea48dd 100644 | |
--- a/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp | |
+++ b/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp | |
@@ -1761,7 +1761,7 @@ void NetworkDataTaskSoup::didReadDataURL(std::optional<DataURLDecoder::Result>&& | |
} | |
m_response = ResourceResponse::dataURLResponse(m_currentRequest.url(), result.value()); | |
- auto bytes = SharedBuffer::create(WTFMove(result->data))->createGBytes(); | |
+ auto bytes = ContiguousSharedBuffer::create(WTFMove(result->data))->createGBytes(); | |
m_inputStream = adoptGRef(g_memory_input_stream_new_from_bytes(bytes.get())); | |
dispatchDidReceiveResponse(); | |
} | |
diff --git a/Source/WebKit/Platform/IPC/SharedBufferCopy.h b/Source/WebKit/Platform/IPC/SharedBufferCopy.h | |
index 7e0d8dbe19025..52835ef6276f0 100644 | |
--- a/Source/WebKit/Platform/IPC/SharedBufferCopy.h | |
+++ b/Source/WebKit/Platform/IPC/SharedBufferCopy.h | |
@@ -52,7 +52,7 @@ public: | |
RefPtr<WebCore::SharedBuffer>& buffer() { return m_buffer; } | |
const RefPtr<WebCore::SharedBuffer>& buffer() const { return m_buffer; } | |
- const uint8_t* data() const { return m_buffer ? m_buffer->data() : nullptr; } | |
+ const uint8_t* data() const { return m_buffer ? m_buffer->makeContiguous()->data() : nullptr; } | |
size_t size() const { return m_buffer ? m_buffer->size() : 0; } | |
bool isEmpty() const { return m_buffer ? m_buffer->isEmpty() : true; } | |
diff --git a/Source/WebKit/Shared/gtk/ArgumentCodersGtk.cpp b/Source/WebKit/Shared/gtk/ArgumentCodersGtk.cpp | |
index 25a307f3829e9..00760f3dc32a6 100644 | |
--- a/Source/WebKit/Shared/gtk/ArgumentCodersGtk.cpp | |
+++ b/Source/WebKit/Shared/gtk/ArgumentCodersGtk.cpp | |
@@ -95,7 +95,7 @@ void ArgumentCoder<SelectionData>::encode(Encoder& encoder, const SelectionData& | |
bool hasCustomData = selection.hasCustomData(); | |
encoder << hasCustomData; | |
if (hasCustomData) | |
- encoder << RefPtr<SharedBuffer>(selection.customData()); | |
+ encoder << RefPtr<ContiguousSharedBuffer>(selection.customData()); | |
bool canSmartReplace = selection.canSmartReplace(); | |
encoder << canSmartReplace; | |
@@ -159,10 +159,10 @@ std::optional<SelectionData> ArgumentCoder<SelectionData>::decode(Decoder& decod | |
if (!decoder.decode(hasCustomData)) | |
return std::nullopt; | |
if (hasCustomData) { | |
- RefPtr<SharedBuffer> buffer; | |
+ RefPtr<ContiguousSharedBuffer> buffer; | |
if (!decoder.decode(buffer)) | |
return std::nullopt; | |
- selection.setCustomData(Ref<SharedBuffer>(*buffer)); | |
+ selection.setCustomData(Ref<ContiguousSharedBuffer>(*buffer)); | |
} | |
bool canSmartReplace; | |
diff --git a/Source/WebKit/UIProcess/WebURLSchemeTask.cpp b/Source/WebKit/UIProcess/WebURLSchemeTask.cpp | |
index df59d56fd697f..f94de933fd0cd 100644 | |
--- a/Source/WebKit/UIProcess/WebURLSchemeTask.cpp | |
+++ b/Source/WebKit/UIProcess/WebURLSchemeTask.cpp | |
@@ -219,7 +219,7 @@ auto WebURLSchemeTask::didComplete(const ResourceError& error) -> ExceptionType | |
if (isSync()) { | |
Vector<uint8_t> data; | |
if (m_syncData) | |
- data = { m_syncData->data(), m_syncData->size() }; | |
+ data = { m_syncData->makeContiguous()->data(), m_syncData->size() }; | |
m_syncCompletionHandler(m_syncResponse, error, WTFMove(data)); | |
m_syncData = nullptr; | |
diff --git a/Tools/TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp b/Tools/TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp | |
index 3692972deaa76..fc590c71a7f47 100644 | |
--- a/Tools/TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp | |
+++ b/Tools/TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp | |
@@ -40,13 +40,13 @@ namespace TestWebKitAPI { | |
TEST_F(SharedBufferTest, createWithContentsOfMissingFile) | |
{ | |
- RefPtr<SharedBuffer> buffer = SharedBuffer::createWithContentsOfFile(String("not_existing_file")); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::createWithContentsOfFile(String("not_existing_file")); | |
ASSERT_NULL(buffer); | |
} | |
TEST_F(SharedBufferTest, createWithContentsOfExistingFile) | |
{ | |
- RefPtr<SharedBuffer> buffer = SharedBuffer::createWithContentsOfFile(tempFilePath()); | |
+ RefPtr<ContiguousSharedBuffer> buffer = ContiguousSharedBuffer::createWithContentsOfFile(tempFilePath()); | |
ASSERT_NOT_NULL(buffer); | |
EXPECT_TRUE(buffer->size() == strlen(SharedBufferTest::testData())); | |
EXPECT_TRUE(String(SharedBufferTest::testData()) == String(buffer->data(), buffer->size())); | |
@@ -54,24 +54,24 @@ TEST_F(SharedBufferTest, createWithContentsOfExistingFile) | |
TEST_F(SharedBufferTest, createWithContentsOfExistingEmptyFile) | |
{ | |
- RefPtr<SharedBuffer> buffer = SharedBuffer::createWithContentsOfFile(tempEmptyFilePath()); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::createWithContentsOfFile(tempEmptyFilePath()); | |
ASSERT_NOT_NULL(buffer); | |
EXPECT_TRUE(buffer->isEmpty()); | |
} | |
TEST_F(SharedBufferTest, copyBufferCreatedWithContentsOfExistingFile) | |
{ | |
- RefPtr<SharedBuffer> buffer = SharedBuffer::createWithContentsOfFile(tempFilePath()); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::createWithContentsOfFile(tempFilePath()); | |
ASSERT_NOT_NULL(buffer); | |
RefPtr<SharedBuffer> copy = buffer->copy(); | |
EXPECT_GT(buffer->size(), 0U); | |
EXPECT_TRUE(buffer->size() == copy->size()); | |
- EXPECT_TRUE(!memcmp(buffer->data(), copy->data(), buffer->size())); | |
+ EXPECT_TRUE(!memcmp(buffer->makeContiguous()->data(), copy->makeContiguous()->data(), buffer->size())); | |
} | |
TEST_F(SharedBufferTest, clearBufferCreatedWithContentsOfExistingFile) | |
{ | |
- RefPtr<SharedBuffer> buffer = SharedBuffer::createWithContentsOfFile(tempFilePath()); | |
+ RefPtr<ContiguousSharedBuffer> buffer = ContiguousSharedBuffer::createWithContentsOfFile(tempFilePath()); | |
ASSERT_NOT_NULL(buffer); | |
buffer->clear(); | |
EXPECT_TRUE(!buffer->size()); | |
@@ -80,12 +80,12 @@ TEST_F(SharedBufferTest, clearBufferCreatedWithContentsOfExistingFile) | |
TEST_F(SharedBufferTest, appendBufferCreatedWithContentsOfExistingFile) | |
{ | |
- RefPtr<SharedBuffer> buffer = SharedBuffer::createWithContentsOfFile(tempFilePath()); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::createWithContentsOfFile(tempFilePath()); | |
ASSERT_NOT_NULL(buffer); | |
buffer->append("a", 1); | |
EXPECT_TRUE(buffer->size() == (strlen(SharedBufferTest::testData()) + 1)); | |
- EXPECT_TRUE(!memcmp(buffer->data(), SharedBufferTest::testData(), strlen(SharedBufferTest::testData()))); | |
- EXPECT_EQ('a', buffer->data()[strlen(SharedBufferTest::testData())]); | |
+ EXPECT_TRUE(!memcmp(buffer->makeContiguous()->data(), SharedBufferTest::testData(), strlen(SharedBufferTest::testData()))); | |
+ EXPECT_EQ('a', buffer->makeContiguous()->data()[strlen(SharedBufferTest::testData())]); | |
} | |
TEST_F(SharedBufferTest, tryCreateArrayBuffer) | |
@@ -93,7 +93,7 @@ TEST_F(SharedBufferTest, tryCreateArrayBuffer) | |
char testData0[] = "Hello"; | |
char testData1[] = "World"; | |
char testData2[] = "Goodbye"; | |
- RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(testData0, strlen(testData0)); | |
+ RefPtr<SharedBuffer> sharedBuffer = ContiguousSharedBuffer::create(testData0, strlen(testData0)); | |
sharedBuffer->append(testData1, strlen(testData1)); | |
sharedBuffer->append(testData2, strlen(testData2)); | |
RefPtr<ArrayBuffer> arrayBuffer = sharedBuffer->tryCreateArrayBuffer(); | |
@@ -108,7 +108,7 @@ TEST_F(SharedBufferTest, tryCreateArrayBufferLargeSegments) | |
Vector<uint8_t> vector1(0x4000, 'b'); | |
Vector<uint8_t> vector2(0x4000, 'c'); | |
- RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(WTFMove(vector0)); | |
+ RefPtr<SharedBuffer> sharedBuffer = ContiguousSharedBuffer::create(WTFMove(vector0)); | |
sharedBuffer->append(WTFMove(vector1)); | |
sharedBuffer->append(WTFMove(vector2)); | |
RefPtr<ArrayBuffer> arrayBuffer = sharedBuffer->tryCreateArrayBuffer(); | |
@@ -148,7 +148,7 @@ TEST_F(SharedBufferTest, copy) | |
"mattis dignissim massa ac pulvinar urna, nunc ut. Sagittis, aliquet penatibus proin lorem, pulvinar lectus," | |
"augue proin! Ac, arcu quis. Placerat habitasse, ridiculus ridiculus."; | |
unsigned length = strlen(testData); | |
- RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(testData, length); | |
+ RefPtr<SharedBuffer> sharedBuffer = ContiguousSharedBuffer::create(testData, length); | |
sharedBuffer->append(testData, length); | |
sharedBuffer->append(testData, length); | |
sharedBuffer->append(testData, length); | |
@@ -156,7 +156,7 @@ TEST_F(SharedBufferTest, copy) | |
ASSERT_EQ(length * 4, sharedBuffer->size()); | |
RefPtr<SharedBuffer> clone = sharedBuffer->copy(); | |
ASSERT_EQ(length * 4, clone->size()); | |
- ASSERT_EQ(0, memcmp(clone->data(), sharedBuffer->data(), clone->size())); | |
+ ASSERT_EQ(0, memcmp(clone->makeContiguous()->data(), sharedBuffer->makeContiguous()->data(), clone->size())); | |
clone->append(testData, length); | |
ASSERT_EQ(length * 5, clone->size()); | |
} | |
@@ -176,7 +176,7 @@ TEST_F(SharedBufferTest, getSomeData) | |
Vector<uint8_t> s2 = {'e', 'f', 'g', 'h'}; | |
Vector<uint8_t> s3 = {'i', 'j', 'k', 'l'}; | |
- auto buffer = SharedBuffer::create(); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::create(); | |
buffer->append(WTFMove(s1)); | |
buffer->append(WTFMove(s2)); | |
buffer->append(WTFMove(s3)); | |
@@ -186,7 +186,7 @@ TEST_F(SharedBufferTest, getSomeData) | |
auto h = buffer->getSomeData(7); | |
auto ijkl = buffer->getSomeData(8); | |
auto kl = buffer->getSomeData(10); | |
- auto abcdefghijkl = buffer->data(); | |
+ auto abcdefghijkl = buffer->makeContiguous()->data(); | |
auto ghijkl = buffer->getSomeData(6); | |
auto l = buffer->getSomeData(11); | |
checkBuffer(abcd.data(), abcd.size(), "abcd"); | |
@@ -202,7 +202,7 @@ TEST_F(SharedBufferTest, getSomeData) | |
TEST_F(SharedBufferTest, isEqualTo) | |
{ | |
auto makeBuffer = [] (Vector<Vector<uint8_t>>&& contents) { | |
- auto buffer = SharedBuffer::create(); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::create(); | |
for (auto& content : contents) | |
buffer->append(WTFMove(content)); | |
return buffer; | |
@@ -221,7 +221,7 @@ TEST_F(SharedBufferTest, isEqualTo) | |
TEST_F(SharedBufferTest, toHexString) | |
{ | |
Vector<uint8_t> t1 = {0x11, 0x5, 0x12}; | |
- auto buffer = SharedBuffer::create(); | |
+ RefPtr<SharedBuffer> buffer = ContiguousSharedBuffer::create(); | |
buffer->append(WTFMove(t1)); | |
String result = buffer->toHexString(); | |
EXPECT_EQ(result, "110512"); | |
-- | |
2.25.1 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment