Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1204)

Side by Side Diff: Source/core/animation/AnimationTimeline.cpp

Issue 1054823002: Unregister AnimationPlayer from ActiveDOMObjects on timeline deletion. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 if (!timing) 70 if (!timing)
71 m_timing = adoptPtrWillBeNoop(new AnimationTimelineTiming(this)); 71 m_timing = adoptPtrWillBeNoop(new AnimationTimelineTiming(this));
72 else 72 else
73 m_timing = timing; 73 m_timing = timing;
74 74
75 ASSERT(document); 75 ASSERT(document);
76 } 76 }
77 77
78 AnimationTimeline::~AnimationTimeline() 78 AnimationTimeline::~AnimationTimeline()
79 { 79 {
80 for (const auto& player : m_players)
sof 2015/04/10 09:12:52 Why are their two loops over m_players here (and d
loyso (OOO) 2015/04/13 00:05:16 Nice to know from now! Sorry and thanks, sof!
81 player->dispose();
dstockwell 2015/04/10 11:21:34 Hmm, this should probably just move to player->tim
82
80 #if !ENABLE(OILPAN) 83 #if !ENABLE(OILPAN)
81 for (const auto& player : m_players) 84 for (const auto& player : m_players)
82 player->timelineDestroyed(); 85 player->timelineDestroyed();
83 #endif 86 #endif
84 } 87 }
85 88
86 void AnimationTimeline::playerAttached(AnimationPlayer& player) 89 void AnimationTimeline::playerAttached(AnimationPlayer& player)
87 { 90 {
88 ASSERT(player.timeline() == this); 91 ASSERT(player.timeline() == this);
89 ASSERT(!m_players.contains(&player)); 92 ASSERT(!m_players.contains(&player));
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
312 { 315 {
313 #if ENABLE(OILPAN) 316 #if ENABLE(OILPAN)
314 visitor->trace(m_document); 317 visitor->trace(m_document);
315 visitor->trace(m_timing); 318 visitor->trace(m_timing);
316 visitor->trace(m_playersNeedingUpdate); 319 visitor->trace(m_playersNeedingUpdate);
317 visitor->trace(m_players); 320 visitor->trace(m_players);
318 #endif 321 #endif
319 } 322 }
320 323
321 } // namespace 324 } // namespace
OLDNEW
« Source/core/animation/AnimationPlayer.cpp ('K') | « Source/core/animation/AnimationPlayer.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698