Open Bug 1244398 Opened 9 years ago Updated 2 years ago

crash on startup in CreateTexturedEffect on big-endian

Categories

(Core :: Graphics, defect, P3)

Other
Unspecified
defect

Tracking

()

People

(Reporter: stevensn, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [gfx-noted])

Attachments

(2 files)

firefox on ppc64 (a big-endian platform) is crashing on startup in mozilla::layers::CreateTexturedEffect aFormat=mozilla::gfx::SurfaceFormat::X8R8G8B8 which is not covered by the case statement. This appears to be introduced with commit 8cd99e9b6034 on Bug 1180942 Stack trace is #0 0x00003fffad5d4494 in mozilla::layers::CreateTexturedEffect(mozilla::gfx::SurfaceFormat, mozilla::layers::TextureSource*, mozilla::gfx::Filter const&, bool, mozilla::layers::LayerRenderState const&) (aFormat=mozilla::gfx::SurfaceFormat::X8R8G8B8, aSource=0x3fff99ea1870, aFilter=@0x3fff97dfccd0: mozilla::gfx::Filter::LINEAR, isAlphaPremultiplied=true, state=...) at /home/ssinger/build-out.ppc64/dist/include/mozilla/layers/Effects.h:285 #1 0x00003fffad5d45c0 in mozilla::layers::CreateTexturedEffect(mozilla::layers::TextureSource*, mozilla::layers::TextureSource*, mozilla::gfx::Filter const&, bool, mozilla::layers::LayerRenderState const&) (aSource=0x3fff99ea1870, aSourceOnWhite=0x0, aFilter=@0x3fff97dfccd0: mozilla::gfx::Filter::LINEAR, isAlphaPremultiplied=true, state=...) at /home/ssinger/build-out.ppc64/dist/include/mozilla/layers/Effects.h:315 #2 0x00003fffad5bd0d4 in mozilla::layers::ContentHostTexture::Composite(mozilla::layers::LayerComposite*, mozilla::layers::EffectChain&, float, mozilla::gfx::Matrix4x4Typed<mozilla::gfx::UnknownUnits, mozilla::gfx::UnknownUnits> const&, mozilla::gfx::Filter const&, mozilla::gfx::RectTyped<mozilla::gfx::UnknownUnits, float> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const*) (this=0x3fff99e36700, aLayer=0x3fff99e7ee78, aEffectChain=..., aOpacity=1, aTransform=..., aFilter=@0x3fff97dfccd0: mozilla::gfx::Filter::LINEAR, aClipRect=..., aVisibleRegion=0x3fff97dfd148) at /media/nfs/usb_drive_src/firefox/mozilla-central-hg/src/gfx/layers/composite/ContentHost.cpp:62 #3 0x00003fffad5cc3dc in mozilla::layers::PaintedLayerComposite::<lambda(mozilla::layers::EffectChain&, const Rect&)>::operator()(mozilla::layers::EffectChain &, const mozilla::gfx::Rect &) const (__closure=0x3fff97dfd118, effectChain=..., clipRect=...) at /media/nfs/usb_drive_src/firefox/mozilla-central-hg/src/gfx/layers/composite/PaintedLayerComposite.cpp:136 #4 0x00003fffad5cff90 in mozilla::layers::RenderWithAllMasks<mozilla::layers::PaintedLayerComposite::RenderLayer(const IntRect&)::<lambda(mozilla::layers::EffectChain&, const Rect&)> >(mozilla::layers::Layer *, mozilla::layers::Compositor *, const mozilla::gfx::IntRect &, mozilla::layers::PaintedLayerComposite::<lambda(mozilla::layers::EffectChain&, const Rect&)>) (aLayer=0x3fff99e7ec00, aCompositor=0x3fff9a8155c0, aClipRect=..., aRenderCallback=...) at /home/ssinger/build-out.ppc64/dist/include/mozilla/layers/LayerManagerComposite.h:566 #5 0x00003fffad5cc4fc in mozilla::layers::PaintedLayerComposite::RenderLayer(mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&) (this=0x3fff99e7ec00, aClipRect=...) at /media/nfs/usb_drive_src/firefox/mozilla-central-hg/src/gfx/layers/composite/PaintedLayerComposite.cpp:137 #6 0x00003fffad5edd84 in mozilla::layers::RenderLayers<mozilla::layers::ContainerLayerComposite>(mozilla::layers::ContainerLayerComposite*, mozilla::layers::LayerManagerComposite*, mozilla::gfx::IntRectTyped<mozilla::RenderTargetPixel> const&) (aContainer=0x3fff99e72400, aManager=0x3fffb7533bc0, aClipRect=...) at /media/nfs/usb_drive_src/firefox/mozilla-central-hg/src/gfx/layers/composite/ContainerLayerComposite.cpp:577 #7 0x00003fffad5e0d30 in mozilla::layers::ContainerRender<mozilla::layers::ContainerLayerComposite>(mozilla::layers::ContainerLayerComposite*, mozilla::layers::LayerManagerComposite*, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&) (aContainer=0x3fff99e72400, aManager=0x3fffb7533bc0, aClipRect=...) at /media/nfs/usb_drive_src/firefox/mozilla-central-hg/src/gfx/layers/composite/ContainerLayerComposite.cpp:741 #8 0x00003fffad5bc824 in mozilla::layers::ContainerLayerComposite::RenderLayer(mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&) (this=0x3fff99e72400, aClipRect=...) at /media/nfs/usb_drive_src/firefox/mozilla-central-hg/src/gfx/layers/composite/ContainerLayerComposite.cpp:815 #9 0x00003fffad5c9e58 in mozilla::layers::LayerManagerComposite::Render(mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&) (this=0x3fffb7533bc0,---Type <return> to
user_pref("layers.use-image-offscreen-surfaces", true); triggers this bug, things work setting it to false
Attached patch patch?Splinter Review
does just adding it to the list fix things?
Attachment #8713948 - Flags: feedback?(steve)
Comment on attachment 8713948 [details] [diff] [review] patch? Review of attachment 8713948 [details] [diff] [review]: ----------------------------------------------------------------- I need to add both + case gfx::SurfaceFormat::X8R8G8B8: + case gfx::SurfaceFormat::A8R8G8B8: To stop the crashes but that just results in pages that don't render properly (I'll upload a screenshot)
Attachment #8713948 - Flags: feedback?(steve) → feedback-
Attached image screen.png
Screenshot of what I see when I add the two surfaceformat values to the case statement.
Summary: crash on startup in CreateTexturedEffect → crash on startup in CreateTexturedEffect on big-endian
Whiteboard: [gfx-noted]
Blocks: big-endian
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: