blob: a3f75992767b9f45b8d13c63880c79a568f2a553 [file] [log] [blame]
Backport patch to fix CVE-2017-17821. Refer to
https://security-tracker.debian.org/tracker/CVE-2017-17821.
Upstream-Status: Backport [https://trac.webkit.org/changeset/232119/webkit]
CVE: CVE-2017-17821
Signed-off-by: Kai Kang <kai.kang@windriver.com>
From 2a17b15297eb886b0bfb7d098ef607cfad6c3da0 Mon Sep 17 00:00:00 2001
From: "mcatanzaro@igalia.com"
<mcatanzaro@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed, 23 May 2018 17:54:01 +0000
Subject: [PATCH] Prohibit shrinking the FastBitVector
https://bugs.webkit.org/show_bug.cgi?id=181020
Reviewed by Oliver Hunt.
Prohibit shrinking the FastBitVector. It's not prepared for this and the current usage does
not require it.
* wtf/FastBitVector.cpp:
(WTF::FastBitVectorWordOwner::resizeSlow):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@232119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
---
Source/WTF/wtf/FastBitVector.cpp | 2 ++
2 files changed, 15 insertions(+)
diff --git a/Source/WTF/wtf/FastBitVector.cpp b/Source/WTF/wtf/FastBitVector.cpp
index eed316975f4..8b019aaa3ed 100644
--- a/Source/WTF/wtf/FastBitVector.cpp
+++ b/Source/WTF/wtf/FastBitVector.cpp
@@ -42,6 +42,8 @@ void FastBitVectorWordOwner::setEqualsSlow(const FastBitVectorWordOwner& other)
void FastBitVectorWordOwner::resizeSlow(size_t numBits)
{
size_t newLength = fastBitVectorArrayLength(numBits);
+
+ RELEASE_ASSERT(newLength >= arrayLength());
// Use fastCalloc instead of fastRealloc because we expect the common
// use case for this method to be initializing the size of the bitvector.
--
2.17.0