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

Unified Diff: third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp

Issue 2319033002: Add WARN_UNUSED_RESULT to BytesConsumer read methods. (Closed)
Patch Set: rebase Created 4 years, 3 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
« no previous file with comments | « third_party/WebKit/Source/modules/fetch/BytesConsumerTestUtil.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp
diff --git a/third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp b/third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp
index 47a95f29a2286e508e112ffa053ebabe0ab204f6..1c2e04da558ed62ec689bb10c226fd58dd62e337 100644
--- a/third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp
+++ b/third_party/WebKit/Source/modules/fetch/FetchDataLoader.cpp
@@ -63,7 +63,10 @@ public:
switch (m_consumer->beginRead(&buffer, &available)) {
case BytesConsumer::Result::Ok:
m_blobData->appendBytes(buffer, available);
- m_consumer->endRead(available);
+ if (m_consumer->endRead(available) != BytesConsumer::Result::Ok) {
+ m_client->didFetchDataLoadFailed();
+ return;
+ }
break;
case BytesConsumer::Result::ShouldWait:
return;
@@ -125,14 +128,18 @@ public:
if (available > 0) {
unsigned bytesAppended = m_rawData->append(buffer, available);
if (!bytesAppended) {
- m_consumer->endRead(0);
+ auto unused = m_consumer->endRead(0);
+ ALLOW_UNUSED_LOCAL(unused);
m_consumer->cancel();
m_client->didFetchDataLoadFailed();
return;
}
DCHECK_EQ(bytesAppended, available);
}
- m_consumer->endRead(available);
+ if (m_consumer->endRead(available) != BytesConsumer::Result::Ok) {
+ m_client->didFetchDataLoadFailed();
+ return;
+ }
break;
case BytesConsumer::Result::ShouldWait:
return;
@@ -185,7 +192,10 @@ public:
case BytesConsumer::Result::Ok:
if (available > 0)
m_builder.append(m_decoder->decode(buffer, available));
- m_consumer->endRead(available);
+ if (m_consumer->endRead(available) != BytesConsumer::Result::Ok) {
+ m_client->didFetchDataLoadFailed();
+ return;
+ }
break;
case BytesConsumer::Result::ShouldWait:
return;
@@ -248,7 +258,11 @@ public:
switch (m_consumer->beginRead(&buffer, &available)) {
case BytesConsumer::Result::Ok:
m_outStream->addData(buffer, available);
- m_consumer->endRead(available);
+ if (m_consumer->endRead(available) != BytesConsumer::Result::Ok) {
+ m_outStream->abort();
+ m_client->didFetchDataLoadFailed();
+ return;
+ }
needToFlush = true;
break;
case BytesConsumer::Result::ShouldWait:
« no previous file with comments | « third_party/WebKit/Source/modules/fetch/BytesConsumerTestUtil.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698