| Index: Source/core/rendering/RenderObject.h
|
| diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h
|
| index bbd53eedf4cffd918e1f61829cb4e775fa519cde..1d692cd25b91cdfed4c061dc6fac5da5c44111d8 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 isAllowedToModifyRenderTreeStructure(Document&);
|
| +
|
| RefPtr<RenderStyle> m_style;
|
|
|
| Node* m_node;
|
| @@ -1275,6 +1277,20 @@ private:
|
| LayoutPoint m_previousPositionFromRepaintContainer;
|
| };
|
|
|
| +enum ModifyRenderTreeStructureMode {
|
| + ModifyRenderTreeStructureAnyState,
|
| + ModifyRenderTreeStructureOnlyInRecalcStyle
|
| +};
|
| +
|
| +// FIXME: remove this once the render object lifecycle ASSERTS are no longer hit.
|
| +class DeprecatedDisableModifyRenderTreeStructureAsserts {
|
| + WTF_MAKE_NONCOPYABLE(DeprecatedDisableModifyRenderTreeStructureAsserts);
|
| +public:
|
| + DeprecatedDisableModifyRenderTreeStructureAsserts();
|
| +private:
|
| + TemporaryChange<ModifyRenderTreeStructureMode> 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; }
|
|
|