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

Unified Diff: Source/core/rendering/RenderObject.h

Issue 267053002: ASSERT on renderer lifecycle (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/rendering/RenderObject.h
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h
index bbd53eedf4cffd918e1f61829cb4e775fa519cde..69484d8376f1e4e2b76b04bb994a2c685393b025 100644
--- a/Source/core/rendering/RenderObject.h
+++ b/Source/core/rendering/RenderObject.h
@@ -1102,6 +1102,8 @@ private:
#endif
const char* invalidationReasonToString(InvalidationReason) const;
+ static bool isAllowedToAccessLifecycle(Document&);
+
RefPtr<RenderStyle> m_style;
Node* m_node;
@@ -1275,6 +1277,20 @@ private:
LayoutPoint m_previousPositionFromRepaintContainer;
};
+enum RenderObjectLifecycleMode {
+ RenderObjectLifecycleUpdatesAnyState,
+ RenderObjectLifecycleUpdatesOnlyInRecalcStyle
+};
+
+// FIXME: remove this once the render object lifecycle ASSERTS are no longer hit.
+class DisableRenderObjectLifecycleAsserts {
ojan 2014/05/06 05:48:17 I'd put Deprecated in the name so that it's clear
dsinclair 2014/05/06 15:55:49 Done.
+ WTF_MAKE_NONCOPYABLE(DisableRenderObjectLifecycleAsserts);
+public:
+ DisableRenderObjectLifecycleAsserts();
+private:
+ TemporaryChange<RenderObjectLifecycleMode> m_disabler;
+};
+
// Allow equality comparisons of RenderObject's by reference or pointer, interchangeably.
inline bool operator==(const RenderObject& a, const RenderObject& b) { return &a == &b; }
inline bool operator==(const RenderObject& a, const RenderObject* b) { return &a == b; }

Powered by Google App Engine
This is Rietveld 408576698