diff options
author | Edit Balint <edbalint@inf.u-szeged.hu> | 2014-01-20 11:14:04 +0000 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-06-03 18:15:10 +0200 |
commit | 3f0e9bb8f2f938c6e18e09d1b7c567e537dffbd9 (patch) | |
tree | 5b9276ba7c0865956aae7208be611bc77b3e52ff | |
parent | a7ef31b64324fa43623e768a0798175884bd6e79 (diff) | |
download | qtwebkit-3f0e9bb8f2f938c6e18e09d1b7c567e537dffbd9.tar.gz |
[CoordinatedGraphics] Segmentation fault at CoordinatedGraphicsScene::clearImageBackingContents
https://bugs.webkit.org/show_bug.cgi?id=125776
Patch by Edit Balint <edbalint@inf.u-szeged.hu> on 2014-01-20
Reviewed by Csaba Osztrogonác.
Unexpected behavior occurs in some test cases which leads to segmentation fault.
* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
(WebCore::CompositingCoordinator::removeImageBacking):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162329 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Task-number: QTBUG-38841
Change-Id: I85699c26f9ec78d97d66cf734188ba7da7e2233e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
-rw-r--r-- | Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp b/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp index 74cd528ec..8bbaeefd4 100644 --- a/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp +++ b/Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp @@ -237,6 +237,10 @@ void CompositingCoordinator::removeImageBacking(CoordinatedImageBackingID imageI m_imageBackings.remove(imageID); m_state.imagesToRemove.append(imageID); + + size_t imageIDPosition = m_state.imagesToClear.find(imageID); + if (imageIDPosition != notFound) + m_state.imagesToClear.remove(imageIDPosition); } void CompositingCoordinator::flushPendingImageBackingChanges() |