diff options
author | Adam Rice <ricea@chromium.org> | 2020-02-18 06:43:52 +0000 |
---|---|---|
committer | Michael Brüning <michael.bruning@qt.io> | 2020-03-05 09:50:12 +0000 |
commit | 642c7bea74e22a9578944ff419fa9fa682adbab7 (patch) | |
tree | ab7b0798b9dab3a13248a72ce8210aab27730530 /chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc | |
parent | 5707cc4f757445b3776a1405f3cc364e5d6cafee (diff) | |
download | qtwebengine-chromium-642c7bea74e22a9578944ff419fa9fa682adbab7.tar.gz |
[Backport] CVE-2020-6407: Out of bounds memory access in streams
Manual backport of patch originally reviewed on
https://chromium-review.googlesource.com/c/chromium/src/+/2032471
https://chromium-review.googlesource.com/c/chromium/src/+/2060221:
Streams: Convert state DCHECKs to CHECKs
Merge to release branch 3987. Original description:
For "cheap" checks of state in the streams implementation, use CHECKs
instead of DCHECKs. This will improve robustness against logic errors.
BUG=1045931
TBR=yhirano@chromium.org
(cherry picked from commit 122b074f0354079f3d9044cc14890dcfd2d72918)
Change-Id: Ide564096a4aeb05e0e09a8fad9056b617dbcaf31
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Diffstat (limited to 'chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc b/chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc index 653cab070a3..d9e69a72280 100644 --- a/chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc +++ b/chromium/third_party/blink/renderer/core/streams/readable_stream_default_controller.cc @@ -110,7 +110,7 @@ void ReadableStreamDefaultController::Close( // 2. Assert: ! ReadableStreamDefaultControllerCanCloseOrEnqueue(controller) // is true. - DCHECK(CanCloseOrEnqueue(controller)); + CHECK(CanCloseOrEnqueue(controller)); // 3. Set controller.[[closeRequested]] to true. controller->is_close_requested_ = true; @@ -136,7 +136,7 @@ void ReadableStreamDefaultController::Enqueue( // 2. Assert: ! ReadableStreamDefaultControllerCanCloseOrEnqueue(controller) // is true. - DCHECK(CanCloseOrEnqueue(controller)); + CHECK(CanCloseOrEnqueue(controller)); // 3. If ! IsReadableStreamLocked(stream) is true and ! // ReadableStreamGetNumReadRequests(stream) > 0, perform ! @@ -261,7 +261,7 @@ const char* ReadableStreamDefaultController::EnqueueExceptionMessage( if (state == ReadableStreamNative::kErrored) { return "Cannot enqueue a chunk into an errored readable stream"; } - DCHECK(state == ReadableStreamNative::kClosed); + CHECK(state == ReadableStreamNative::kClosed); return "Cannot enqueue a chunk into a closed readable stream"; } |