| Index: cc/trees/draw_property_utils.cc
 | 
| diff --git a/cc/trees/draw_property_utils.cc b/cc/trees/draw_property_utils.cc
 | 
| index 4eeeec4757c711556a7d69bde6268867c2a74cf8..2be0874d95eb62853bcbc8f51c480b352dd3da51 100644
 | 
| --- a/cc/trees/draw_property_utils.cc
 | 
| +++ b/cc/trees/draw_property_utils.cc
 | 
| @@ -266,12 +266,13 @@ static ConditionalClip ComputeAccumulatedClip(
 | 
|  
 | 
|    // TODO(weiliangc): If we don't create clip for render surface, we don't need
 | 
|    // to check applies_local_clip.
 | 
| -  while (!clip_node->applies_local_clip && parent_chain.size() > 0) {
 | 
| +  while (clip_node->clip_type != ClipNode::ClipType::APPLIES_LOCAL_CLIP &&
 | 
| +         parent_chain.size() > 0) {
 | 
|      clip_node = parent_chain.top();
 | 
|      parent_chain.pop();
 | 
|    }
 | 
|  
 | 
| -  if (!clip_node->applies_local_clip)
 | 
| +  if (clip_node->clip_type != ClipNode::ClipType::APPLIES_LOCAL_CLIP)
 | 
|      // No clip node applying clip in between.
 | 
|      return ConditionalClip{false, gfx::RectF()};
 | 
|  
 | 
| @@ -283,7 +284,7 @@ static ConditionalClip ComputeAccumulatedClip(
 | 
|    while (parent_chain.size() > 0) {
 | 
|      clip_node = parent_chain.top();
 | 
|      parent_chain.pop();
 | 
| -    if (!clip_node->applies_local_clip) {
 | 
| +    if (clip_node->clip_type != ClipNode::ClipType::APPLIES_LOCAL_CLIP) {
 | 
|        continue;
 | 
|      }
 | 
|      ConditionalClip current_clip = ComputeCurrentClip(
 | 
| @@ -856,7 +857,7 @@ void ComputeClips(PropertyTrees* property_trees,
 | 
|      // need to clip using our parent clip and if we don't propagate it here,
 | 
|      // it will be lost.
 | 
|      if (clip_node->resets_clip && non_root_surfaces_enabled) {
 | 
| -      if (clip_node->applies_local_clip) {
 | 
| +      if (clip_node->clip_type == ClipNode::ClipType::APPLIES_LOCAL_CLIP) {
 | 
|          clip_node->clip_in_target_space = MathUtil::MapClippedRect(
 | 
|              transform_tree.ToTarget(clip_node->transform_id,
 | 
|                                      clip_node->target_effect_id),
 | 
| @@ -874,7 +875,8 @@ void ComputeClips(PropertyTrees* property_trees,
 | 
|        ResetIfHasNanCoordinate(&clip_node->combined_clip_in_target_space);
 | 
|        continue;
 | 
|      }
 | 
| -    bool use_only_parent_clip = !clip_node->applies_local_clip;
 | 
| +    bool use_only_parent_clip =
 | 
| +        clip_node->clip_type != ClipNode::ClipType::APPLIES_LOCAL_CLIP;
 | 
|      if (use_only_parent_clip) {
 | 
|        clip_node->combined_clip_in_target_space =
 | 
|            parent_combined_clip_in_target_space;
 | 
| 
 |