| Index: cc/trees/layer_tree_host_impl.cc | 
| diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc | 
| index 539eac4825881d6cd7c92bcffdb4b07782c7f568..f58272fc99f662d53e719e3cece7db57e0f459af 100644 | 
| --- a/cc/trees/layer_tree_host_impl.cc | 
| +++ b/cc/trees/layer_tree_host_impl.cc | 
| @@ -2320,9 +2320,25 @@ InputHandler::ScrollStatus LayerTreeHostImpl::ScrollBegin( | 
| InputHandler::ScrollStatus LayerTreeHostImpl::ScrollAnimated( | 
| const gfx::Point& viewport_point, | 
| const gfx::Vector2dF& scroll_delta) { | 
| -  if (CurrentlyScrollingLayer()) { | 
| -    // TODO(skobes): Update the target of the existing animation. | 
| -    return ScrollIgnored; | 
| +  if (LayerImpl* layer_impl = CurrentlyScrollingLayer()) { | 
| +    Animation* animation = | 
| +        layer_impl->layer_animation_controller()->GetAnimation( | 
| +            Animation::ScrollOffset); | 
| +    if (!animation) | 
| +      return ScrollIgnored; | 
| + | 
| +    ScrollOffsetAnimationCurve* curve = | 
| +        animation->curve()->ToScrollOffsetAnimationCurve(); | 
| + | 
| +    gfx::Vector2dF new_target = curve->target_value() + scroll_delta; | 
| +    new_target.SetToMax(gfx::Vector2dF()); | 
| +    new_target.SetToMin(layer_impl->MaxScrollOffset()); | 
| + | 
| +    curve->UpdateTarget( | 
| +        animation->TrimTimeToCurrentIteration(CurrentFrameTimeTicks()), | 
| +        new_target); | 
| + | 
| +    return ScrollStarted; | 
| } | 
| // ScrollAnimated is only used for wheel scrolls. We use the same bubbling | 
| // behavior as ScrollBy to determine which layer to animate, but we do not | 
| @@ -2359,7 +2375,7 @@ InputHandler::ScrollStatus LayerTreeHostImpl::ScrollAnimated( | 
| curve->SetInitialValue(current_offset); | 
|  | 
| scoped_ptr<Animation> animation = | 
| -          Animation::Create(curve->Clone().Pass(), | 
| +          Animation::Create(curve.PassAs<AnimationCurve>(), | 
| AnimationIdProvider::NextAnimationId(), | 
| AnimationIdProvider::NextGroupId(), | 
| Animation::ScrollOffset); | 
|  |