Closed Bug 878612 Opened 7 years ago Closed 7 years ago

nsCSSRendering::GetBackgroundLayerRect doesn't pass through the background drawing flags to PrepareBackgroundLayer

Categories

(Core :: Layout, defect)

x86_64
Linux
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla24

People

(Reporter: tnikkel, Assigned: tnikkel)

References

Details

Attachments

(2 files)

Attached patch patchSplinter Review
This means that nsDisplayBackgroundImage::GetBoundsInternal when it calls GetBackgroundLayerRect can get a different result then when we call PrepareBackgroundLayer later for the actual drawing. This doesn't make sense, they should both do the same thing.

This allows bug 845147 to be green.
Attachment #757169 - Flags: review?(matt.woodrow)
This one reftest hits the same assert more times because we actually proceed through to the body of nsImageRenderer::PrepareImage when we are just getting the bounds instead of only when we are painting the background image when the sync decode flag is passed in correctly.

The assert is
 ASSERTION: ComputeActualCropRect() should not fail here: 'success', file ../../../layout/base/nsCSSRendering.cpp, line 4284
Attachment #757173 - Flags: review?(matt.woodrow)
Attachment #757169 - Flags: review?(matt.woodrow) → review+
Attachment #757173 - Flags: review?(matt.woodrow) → review+
https://hg.mozilla.org/mozilla-central/rev/78606950ee2e
https://hg.mozilla.org/mozilla-central/rev/1cdf2076eb73
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla24
You need to log in before you can comment on or make changes to this bug.