summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform
diff options
context:
space:
mode:
authorAnders Edenbrandt <anders.edenbrandt@sonyericsson.com>2012-03-09 15:33:38 +0100
committerKenneth Andersson <kenneth.andersson@sonymobile.com>2012-08-31 08:20:15 +0200
commite90019d2a3c455d2bee14682e8973dcd33460010 (patch)
treeb394a6c3670998940531249ff0410ce6a9e84b44 /Source/WebCore/platform
parent5423878ee1cb0965ced62800f36933841eaa40f6 (diff)
downloadexternal_webkit-e90019d2a3c455d2bee14682e8973dcd33460010.zip
external_webkit-e90019d2a3c455d2bee14682e8973dcd33460010.tar.gz
external_webkit-e90019d2a3c455d2bee14682e8973dcd33460010.tar.bz2
Crash on Orange media portal
Visit orange.deezer.com, press tab marked "My Music". Browser crashes every time. Pressing the button will trigger a re-layout of the page. This in turn will cause some rendering nodes of type RenderLayer to be removed from the rendering tree. When such a node is removed, it is important to also update certain lists in ancestor nodes that may hold references to this node. A node that may hold such a reference is identified as being a "stacking context". However, in Android, when the symbol ENABLE_COMPOSITED_FIXED_ELEMENTS is defined, the definition of what is a stacking context is expanded. In this case, a node that is a stacking context and holds references to descendants, changes one of the conditions that form part of Android's expanded stacking context definition. So, now it is no longer a stacking context, but the reference list is not deleted/updated. When the descendant node is removed a search for an ancestral stacking context is made, but it will not find this node since it is no longer a stacking context. The solution is to make sure that the list of references is updated/cleared whenever the node changes a condition that may cause its status as a stacking context to also change. Change-Id: If5a7b63715020bc3d23749a7c09003a86d90e28d
Diffstat (limited to 'Source/WebCore/platform')
0 files changed, 0 insertions, 0 deletions