[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.18-1-697-g2f78b87
senorblanco at chromium.org
senorblanco at chromium.org
Wed Jan 20 22:29:25 UTC 2010
The following commit has been merged in the debian/unstable branch:
commit ebc4b79b8275d841d5ebaecf1f0e92e6763fa012
Author: senorblanco at chromium.org <senorblanco at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Jan 19 20:19:12 2010 +0000
Fix for crash on large TransparencyWin allocation. The fix is
to leave m_layerValid false when the allocPixels of
OwnedBuffers::m_referenceBitmap fails. Then TransparencyWin won't
attempt to use it.
Reviewed by Dimitri Glazkov.
Will be covered by a new unit test in Chromium's test_shell_tests (when
this is rolled into Chromium).
https://bugs.webkit.org/show_bug.cgi?id=33844
* platform/graphics/chromium/TransparencyWin.cpp:
(WebCore::TransparencyWin::initializeNewContext):
Early return when m_referenceBitmap or its pixels is NULL, leaving
m_layerValid false.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index a886da5..5b77beb 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,22 @@
+2010-01-19 Stephen White <senorblanco at chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Fix for crash on large TransparencyWin allocation. The fix is
+ to leave m_layerValid false when the allocPixels of
+ OwnedBuffers::m_referenceBitmap fails. Then TransparencyWin won't
+ attempt to use it.
+
+ Will be covered by a new unit test in Chromium's test_shell_tests (when
+ this is rolled into Chromium).
+
+ https://bugs.webkit.org/show_bug.cgi?id=33844
+
+ * platform/graphics/chromium/TransparencyWin.cpp:
+ (WebCore::TransparencyWin::initializeNewContext):
+ Early return when m_referenceBitmap or its pixels is NULL, leaving
+ m_layerValid false.
+
2010-01-19 Eric Carlson <eric.carlson at apple.com>
Reviewed by Adam Roben.
diff --git a/WebCore/platform/graphics/chromium/TransparencyWin.cpp b/WebCore/platform/graphics/chromium/TransparencyWin.cpp
index 6dcd595..80df2ec 100644
--- a/WebCore/platform/graphics/chromium/TransparencyWin.cpp
+++ b/WebCore/platform/graphics/chromium/TransparencyWin.cpp
@@ -371,8 +371,11 @@ void TransparencyWin::initializeNewContext()
return;
m_drawContext = m_layerBuffer->context();
- if (needReferenceBitmap)
+ if (needReferenceBitmap) {
m_referenceBitmap = m_ownedBuffers->referenceBitmap();
+ if (!m_referenceBitmap || !m_referenceBitmap->getPixels())
+ return;
+ }
m_validLayer = true;
return;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list