Closed
Bug 695964
Opened 14 years ago
Closed 10 years ago
"ASSERTION: Can't get a delta for an untransformed frame!" with transform, svg:foreignObject
Categories
(Core :: Layout, defect)
Tracking
()
RESOLVED
WORKSFORME
Tracking | Status | |
---|---|---|
b2g-v2.5 | --- | fixed |
People
(Reporter: jruderman, Unassigned)
References
Details
(Keywords: assertion, testcase)
Attachments
(2 files)
###!!! ASSERTION: Can't get a delta for an untransformed frame!: 'aFrame->GetStyleDisplay()->HasTransform()', file layout/base/nsDisplayList.cpp, line 2370
###!!! ASSERTION: If we don't have a transform, then we must be at least attempting to preserve the transforms of our children: 'aFrame->GetStyleDisplay()->mTransformStyle == NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D', file layout/base/nsDisplayList.cpp, line 2518
Reporter | ||
Comment 1•14 years ago
|
||
Comment 2•14 years ago
|
||
nsSVGForeignObjectFrame::IsTransformed is overridden to always return true, which is what we we're checking in nsFrame::FinishAndStoreOverflow.
nsDisplayTransform::GetResultingTransformMatrix requires GetStyleDisplay()->HasTransform() to be true, which it isn't
I'm not sure what the proper behaviour here is, why are foreign objects returning true for transformed when they don't have a transform?
Comment 3•14 years ago
|
||
If it's not actually transformed maybe we can make it return false?
Comment 4•14 years ago
|
||
http://mxr.mozilla.org/mozilla-central/source/layout/svg/base/src/nsSVGForeignObjectFrame.h#84
This looks like an intentional change?
The default implementation would be returning false here, I'm not sure why it has an override.
Comment 5•14 years ago
|
||
Perhaps it was just simpler than checking if it actually had a non-identity transform?
Reporter | ||
Comment 6•14 years ago
|
||
Modified assertion still happens on trunk:
###!!! ASSERTION: If we don't have a transform, then we must have another reason to have an nsDisplayTransform created: 'aFrame->GetStyleDisplay()->mTransformStyle == NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D || aFrame->GetStyleDisplay()->mBackfaceVisibility == NS_STYLE_BACKFACE_VISIBILITY_HIDDEN', file layout/base/nsDisplayList.cpp, line 2557
Comment 7•10 years ago
|
||
No longer asserts on trunk.
Status: NEW → RESOLVED
Closed: 10 years ago
Flags: in-testsuite+
Resolution: --- → WORKSFORME
![]() |
||
Comment 9•10 years ago
|
||
bugherder |
![]() |
||
Comment 10•10 years ago
|
||
bugherder uplift |
status-b2g-v2.5:
--- → fixed
You need to log in
before you can comment on or make changes to this bug.
Description
•