| Index: third_party/WebKit/Source/core/paint/PaintLayer.cpp
|
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayer.cpp b/third_party/WebKit/Source/core/paint/PaintLayer.cpp
|
| index f1f683b47c1d4b69f10391d4f6de1780a9c81348..24891e1a2e7338837dace8734db5a050c70f9f65 100644
|
| --- a/third_party/WebKit/Source/core/paint/PaintLayer.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/PaintLayer.cpp
|
| @@ -94,6 +94,38 @@ namespace blink {
|
|
|
| namespace {
|
|
|
| +#if !OS(WIN) // Compiler on windows seems to combine bit fields of inner structs.
|
| +
|
| +struct SameSizeAsPaintLayer {
|
| + virtual ~SameSizeAsPaintLayer() { } // Allocate vtable pointer.
|
| + int type;
|
| + int bitFields;
|
| + void* pointers[13];
|
| + LayoutUnit layoutUnits[8];
|
| + int intFields[6];
|
| + uint64_t compositingReasons[2];
|
| + struct {
|
| + IntRect rect;
|
| + void* pointers[8];
|
| + int bitFields;
|
| + } ancestorCompositingInputs;
|
| + struct {
|
| + int bitFields;
|
| + } descendantCompositingInputs;
|
| + struct {
|
| + void* pointers[2];
|
| + } clipper;
|
| + struct {
|
| + IntSize size;
|
| + void* pointer;
|
| + LayoutRect rect;
|
| + } previousPaintStatus;
|
| +};
|
| +
|
| +static_assert(sizeof(PaintLayer) == sizeof(SameSizeAsPaintLayer), "PaintLayer should stay small");
|
| +
|
| +#endif // !OS(WIN)
|
| +
|
| static CompositingQueryMode gCompositingQueryMode =
|
| CompositingQueriesAreOnlyAllowedInCertainDocumentLifecyclePhases;
|
|
|
|
|