Index: ui/compositor/layer_animation_observer.cc |
diff --git a/ui/compositor/layer_animation_observer.cc b/ui/compositor/layer_animation_observer.cc |
index 88db4c65ec2fc5ba7f962e3031aaa1fb9899a8d3..658a835ddfa553198eb700b2c13ac3fa1c42c668 100644 |
--- a/ui/compositor/layer_animation_observer.cc |
+++ b/ui/compositor/layer_animation_observer.cc |
@@ -140,11 +140,16 @@ void ImplicitAnimationObserver::CheckCompleted() { |
void ImplicitAnimationObserver::UpdatePropertyAnimationStatus( |
LayerAnimationSequence* sequence, |
AnimationStatus status) { |
- const LayerAnimationElement::AnimatableProperties& properties = |
+ LayerAnimationElement::AnimatableProperties properties = |
sequence->properties(); |
- for (LayerAnimationElement::AnimatableProperties::const_iterator i = |
- properties.begin(); i != properties.end(); ++i) { |
- property_animation_status_[(*i)] = status; |
+ for (unsigned i = LayerAnimationElement::FIRST_PROPERTY; |
+ i != LayerAnimationElement::SENTINEL; |
+ i = i << 1) { |
+ if (i & properties) { |
+ LayerAnimationElement::AnimatableProperty property = |
+ static_cast<LayerAnimationElement::AnimatableProperty>(i); |
+ property_animation_status_[property] = status; |
+ } |
} |
} |