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

Side by Side Diff: Source/core/svg/SVGElement.h

Issue 334223009: Oilpan: Mark SVGElement::InvalidationGuard and SVGElement::InstanceUpdateBlocker STACK_ALLOCATED(). (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 6 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org>
4 * Copyright (C) 2009 Apple Inc. All rights reserved. 4 * Copyright (C) 2009 Apple Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 bool isContextElement() const { return m_isContextElement; } 153 bool isContextElement() const { return m_isContextElement; }
154 void setContextElement() { m_isContextElement = true; } 154 void setContextElement() { m_isContextElement = true; }
155 155
156 void addToPropertyMap(PassRefPtr<SVGAnimatedPropertyBase>); 156 void addToPropertyMap(PassRefPtr<SVGAnimatedPropertyBase>);
157 157
158 SVGAnimatedString* className() { return m_className.get(); } 158 SVGAnimatedString* className() { return m_className.get(); }
159 159
160 bool inUseShadowTree() const; 160 bool inUseShadowTree() const;
161 161
162 class InvalidationGuard { 162 class InvalidationGuard {
163 STACK_ALLOCATED();
163 WTF_MAKE_NONCOPYABLE(InvalidationGuard); 164 WTF_MAKE_NONCOPYABLE(InvalidationGuard);
164 public: 165 public:
165 InvalidationGuard(SVGElement* element) : m_element(element) { } 166 InvalidationGuard(SVGElement* element) : m_element(element) { }
haraken 2014/06/17 00:52:48 Add explicit.
tkent 2014/06/17 01:40:47 This CL is not responsible for existing style issu
166 ~InvalidationGuard() { m_element->invalidateInstances(); } 167 ~InvalidationGuard() { m_element->invalidateInstances(); }
168
167 private: 169 private:
168 SVGElement* m_element; 170 RawPtrWillBeMember<SVGElement> m_element;
169 }; 171 };
170 172
171 class InstanceUpdateBlocker { 173 class InstanceUpdateBlocker {
174 STACK_ALLOCATED();
172 WTF_MAKE_NONCOPYABLE(InstanceUpdateBlocker); 175 WTF_MAKE_NONCOPYABLE(InstanceUpdateBlocker);
173 public: 176 public:
174 InstanceUpdateBlocker(SVGElement* targetElement); 177 InstanceUpdateBlocker(SVGElement* targetElement);
haraken 2014/06/17 00:52:48 Add explicit.
175 ~InstanceUpdateBlocker(); 178 ~InstanceUpdateBlocker();
176 179
177 private: 180 private:
178 SVGElement* m_targetElement; 181 RawPtrWillBeMember<SVGElement> m_targetElement;
179 }; 182 };
180 183
181 void invalidateInstances(); 184 void invalidateInstances();
182 185
183 virtual void trace(Visitor*) OVERRIDE; 186 virtual void trace(Visitor*) OVERRIDE;
184 187
185 static const AtomicString& eventParameterName(); 188 static const AtomicString& eventParameterName();
186 189
187 protected: 190 protected:
188 SVGElement(const QualifiedName&, Document&, ConstructionType = CreateSVGElem ent); 191 SVGElement(const QualifiedName&, Document&, ConstructionType = CreateSVGElem ent);
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 static bool equal(const QualifiedName& a, const QualifiedName& b) { return a .matches(b); } 261 static bool equal(const QualifiedName& a, const QualifiedName& b) { return a .matches(b); }
259 }; 262 };
260 263
261 DEFINE_ELEMENT_TYPE_CASTS(SVGElement, isSVGElement()); 264 DEFINE_ELEMENT_TYPE_CASTS(SVGElement, isSVGElement());
262 265
263 template <> inline bool isElementOfType<const SVGElement>(const Node& node) { re turn node.isSVGElement(); } 266 template <> inline bool isElementOfType<const SVGElement>(const Node& node) { re turn node.isSVGElement(); }
264 267
265 } 268 }
266 269
267 #endif 270 #endif
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698