Closed
Bug 1503749
Opened 6 years ago
Closed 6 years ago
Skia m71 (Firefox 65 branch) asserts on launch on big endian platforms: SkBlitter_ARGB32.cpp:167: fatal error: "assert(fSrcA != 0xFF)"
Categories
(Core :: Graphics, defect, P5)
Tracking
()
RESOLVED
FIXED
mozilla65
Tracking | Status | |
---|---|---|
firefox65 | --- | fixed |
People
(Reporter: awilfox, Assigned: lsalzman)
Details
(Whiteboard: [gfx-noted])
Attachments
(1 file)
1.48 KB,
patch
|
awilfox
:
review+
|
Details | Diff | Splinter Review |
After applying patches to fix Bug 1503733 and Bug 1503747, now we're presented with a new issue: /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkBlitter_ARGB32.cpp:167: fatal error: "assert(fSrcA != 0xFF)" Abort from sk_abort Hit MOZ_CRASH() at /var/clean/mozppc/mozilla-unified/memory/mozalloc/mozalloc_abort.cpp:35 #0 0x000000013c4bb2b0 in mozalloc_abort(char const*) (msg=<optimized out>) at /var/clean/mozppc/mozilla-unified/memory/mozalloc/mozalloc_abort.cpp:35 #1 0x00003fff85ab36c4 in sk_abort_no_print() () at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/ports/SkMemory_mozalloc.cpp:24 #2 0x00003fff857cab18 in SkARGB32_Blitter::<lambda()>::operator() (__closure=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkBlitter_ARGB32.cpp:167 #3 0x00003fff857cab18 in SkARGB32_Blitter::blitMask(SkMask const&, SkIRect const&) (this=0x3fffcbfc91e8, mask=..., clip=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkBlitter_ARGB32.cpp:167 #4 0x00003fff85a59de0 in SkDraw::<lambda(const SkMask&, const SkGlyph&, SkPoint)>::operator() (mask=..., __closure=0x15d2f75e0) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkDraw_text.cpp:104 #5 0x00003fff85a59de0 in std::_Function_handler<void(const SkMask&, const SkGlyph&, SkPoint), SkDraw::drawOneMaskCreator(const SkPaint&, SkArenaAlloc*) const::<lambda(const SkMask&, const SkGlyph&, SkPoint)> >::_M_invoke(const std::_Any_data &, const SkMask &, const SkGlyph &, SkPoint &&) (__functor=..., __args#0=..., __args#1=..., __args#2=...) at /usr/include/c++/6.4.0/functional:1731 #6 0x00003fff85b76530 in std::function<void (SkMask const&, SkGlyph const&, SkPoint)>::operator()(SkMask const&, SkGlyph const&, SkPoint) const (__args#2=..., __args#1=..., __args#0=..., this=0x3fffcbfc8fc8) at /usr/include/c++/6.4.0/functional:2127 #7 0x00003fff85b76530 in SkGlyphRunListPainter::drawGlyphRunAsFullpixelMask(SkGlyphCache*, SkGlyphRun const&, SkPoint, SkMatrix const&, std::function<void (SkMask const&, SkGlyph const&, SkPoint)>) (this=0x15c4cfda0, cache=0x15d2f7010, glyphRun=..., origin=..., deviceMatrix=..., perMask=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkGlyphRunPainter.cpp:190 #8 0x00003fff85b76668 in SkGlyphRunListPainter::drawUsingMasks(SkGlyphCache*, SkGlyphRun const&, SkPoint, SkMatrix const&, std::function<void (SkMask const&, SkGlyph const&, SkPoint)>) (this=0x15c4cfda0, cache=0x15d2f7010, glyphRun=..., origin=..., deviceMatrix=..., perMask=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkGlyphRunPainter.cpp:236 #9 0x00003fff85b7692c in SkGlyphRunListPainter::drawForBitmapDevice(SkGlyphRunList const&, SkMatrix const&, std::function<std::function<void (SkMask const&, SkGlyph const&, SkPoint)> (SkPaint const&, SkArenaAlloc*)>, std::function<std::function<void (SkPath const*, SkGlyph const&, SkPoint)> (SkPaint const&, float, SkArenaAlloc*)>) (this=0x15c4cfda0, glyphRunList=..., deviceMatrix=..., perMaskCreator=..., perPathCreator=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkGlyphRunPainter.cpp:225 #10 0x00003fff85a55e60 in SkDraw::drawGlyphRunList(SkGlyphRunList const&, SkGlyphRunListPainter*) const (this=0x3fffcbfca0c0, glyphRunList=..., glyphPainter=0x15c4cfda0) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkDraw_text.cpp:139 #11 0x00003fff85914eac in SkBitmapDevice::drawGlyphRunList(SkGlyphRunList const&) (this=0x15c4cf820, glyphRunList=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkBitmapDevice.cpp:585 #12 0x00003fff85932fb8 in SkCanvas::onDrawPosText(void const*, unsigned long, SkPoint const*, SkPaint const&) (this=0x15ad5b140, text=0x3fffcbfca530, byteLength=14, pos=0x3fffcbfca770, paint=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkCanvas.cpp:2447 #13 0x00003fff85927c5c in SkCanvas::drawPosText(void const*, unsigned long, SkPoint const*, SkPaint const&) (this=0x15ad5b140, text=0x3fffcbfca530, byteLength=14, pos=0x3fffcbfca770, paint=...) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkCanvas.cpp:2531 #14 0x00003fff8304e6d4 in mozilla::gfx::DrawTargetSkia::DrawGlyphs(mozilla::gfx::ScaledFont*, mozilla::gfx::GlyphBuffer const&, mozilla::gfx::Pattern const&, mozilla::gfx::StrokeOptions const*, mozilla::gfx::DrawOptions const&) (this=<optimized out>, aFont=<optimized out>, aBuffer=..., aPattern=..., aStrokeOptions=<optimized out>, aOptions=...) at /var/clean/mozppc/mozilla-unified/gfx/2d/DrawTargetSkia.cpp:1477 #15 0x00003fff833b7dec in GlyphBufferAzure::FlushGlyphs() (this=0x3fffcbfcabe8) at /var/clean/mozppc/mozilla-unified/gfx/thebes/gfxFont.cpp:1829 #16 0x00003fff833adf68 in GlyphBufferAzure::~GlyphBufferAzure() (this=0x3fffcbfcabd8, __in_chrg=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/thebes/gfxFont.cpp:1710 #17 0x00003fff833adf68 in gfxFont::Draw(gfxTextRun const*, unsigned int, unsigned int, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float>*, TextRunDrawParams const&, mozilla::gfx::ShapedTextFlags) (this=<optimized out>, aTextRun=0x15b9415a0, aStart=<optimized out>, aEnd=<optimized out>, aPt=0x3fffcbfcc238, aRunParams=..., aOrientation=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/thebes/gfxFont.cpp:2413 #18 0x00003fff833cc5f0 in gfxTextRun::DrawGlyphs(gfxFont*, gfxTextRun::Range, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float>*, gfxTextRun::PropertyProvider*, gfxTextRun::Range, TextRunDrawParams&, mozilla::gfx::ShapedTextFlags) const (this=0x15b9415a0, aFont=0x15c684640, aRange=..., aPt=0x3fffcbfcc238, aProvider=0x3fffcbfcc690, aSpacingRange=..., aParams=..., aOrientation=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/thebes/gfxTextRun.cpp:440 #19 0x00003fff833d3a44 in gfxTextRun::Draw(gfxTextRun::Range, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float>, gfxTextRun::DrawParams const&) const (this=0x15b9415a0, aRange=..., aPt=..., aParams=...) at /var/clean/mozppc/mozilla-unified/gfx/thebes/gfxTextRun.cpp:688 #20 0x00003fff852872e0 in DrawTextRun(gfxTextRun const*, mozilla::gfx::Point const&, gfxTextRun::Range, nsTextFrame::DrawTextRunParams const&, nsTextFrame*) (aTextRun=0x15b9415a0, aTextBaselinePt=..., aRange=..., aParams=..., aFrame=0x15cb9e240) at /var/clean/mozppc/mozilla-unified/layout/generic/nsTextFrame.cpp:7165 #21 0x00003fff85297edc in nsTextFrame::DrawTextRun(gfxTextRun::Range, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, nsTextFrame::DrawTextRunParams const&) (this=0x15cb9e240, aRange=..., aTextBaselinePt=..., aParams=...) at /var/clean/mozppc/mozilla-unified/layout/generic/nsTextFrame.cpp:7176 #22 0x00003fff85298930 in nsTextFrame::DrawText(gfxTextRun::Range, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, nsTextFrame::DrawTextParams const&) (this=0x15cb9e240, aRange=..., aTextBaselinePt=..., aParams=...) at /var/clean/mozppc/mozilla-unified/layout/generic/nsTextFrame.cpp:7409 #23 0x00003fff852a4cc4 in nsTextFrame::PaintText(nsTextFrame::PaintTextParams const&, nsCharClipDisplayItem const&, float) (this=0x15cb9e240, aParams=..., aItem=..., aOpacity=1) at /var/clean/mozppc/mozilla-unified/layout/generic/nsTextFrame.cpp:7102 #24 0x00003fff852a5268 in nsDisplayText::RenderToContext(gfxContext*, nsDisplayListBuilder*, bool) (this=0x15d2f9220, aCtx=0x15bd825a0, aBuilder=0x3fffcbfcdc08, aIsRecording=false) at /var/clean/mozppc/mozilla-unified/layout/generic/nsTextFrame.cpp:5204 #25 0x00003fff852a53b8 in nsDisplayText::Paint(nsDisplayListBuilder*, gfxContext*) (this=0x15d2f9220, aBuilder=0x3fffcbfcdc08, aCtx=0x15bd825a0) at /var/clean/mozppc/mozilla-unified/layout/generic/nsTextFrame.cpp:5113 #26 0x00003fff854422ac in mozilla::FrameLayerBuilder::PaintItems(std::vector<mozilla::AssignedDisplayItem, std::allocator<mozilla::AssignedDisplayItem> >&, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, gfxContext*, nsDisplayListBuilder*, nsPresContext*, mozilla::gfx::IntPointTyped<mozilla::gfx::UnknownUnits> const&, float, float) (this=0x15bd8b300, aItems=..., aRect=..., aContext=0x15bd825a0, aBuilder=0x3fffcbfcdc08, aPresContext=0x15bcee6a0, aOffset=..., aXScale=<optimized out>, aYScale=1) at /var/clean/mozppc/mozilla-unified/layout/painting/FrameLayerBuilder.cpp:7448 #27 0x00003fff85442a28 in mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*) (aLayer=0x15d2fa700, aContext=0x15bd825a0, aRegionToDraw=..., aDirtyRegion=..., aClip=<optimized out>, aRegionToInvalidate=..., aCallbackData=0x3fffcbfcdc08) at /var/clean/mozppc/mozilla-unified/layout/painting/FrameLayerBuilder.cpp:7628 #28 0x00003fff8329d9d8 in mozilla::layers::ClientPaintedLayer::RenderLayerWithReadback(mozilla::layers::ReadbackProcessor*) (this=0x15d2fa700, aReadback=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientPaintedLayer.cpp:166 #29 0x00003fff832a903c in mozilla::layers::ClientContainerLayer::RenderLayer() (this=0x15bc1eac0) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientContainerLayer.h:58 #30 0x00003fff832972d8 in mozilla::layers::ClientLayerManager::EndTransactionInternal(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags) (this=0x15aac4d20, aCallback=0x3fff8544256c <mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*)>, aCallbackData=0x3fffcbfcdc08) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientLayerManager.cpp:331 #31 0x00003fff832a4160 in mozilla::layers::ClientLayerManager::EndTransaction(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags) (this=0x15aac4d20, aCallback=0x3fff8544256c <mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*)>, aCallbackData=0x3fffcbfcdc08, aFlags=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientLayerManager.cpp:389 #32 0x00003fff85447fe0 in nsDisplayList::PaintRoot(nsDisplayListBuilder*, gfxContext*, unsigned int) (this=0x3fffcbfcda58, aBuilder=0x3fffcbfcdc08, aCtx=<optimized out>, aFlags=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/painting/nsDisplayList.cpp:2881 #33 0x00003fff8514f35c in nsLayoutUtils::PaintFrame(gfxContext*, nsIFrame*, nsRegion const&, unsigned int, nsDisplayListBuilderMode, nsLayoutUtils::PaintFrameFlags) (aRenderingContext=0x0, aFrame=0x15c5f9440, aDirtyRegion=..., aBackstop=<optimized out>, aBuilderMode=<optimized out>, aFlags=(nsLayoutUtils::PaintFrameFlags::PAINT_WIDGET_LAYERS | nsLayoutUtils::PaintFrameFlags::PAINT_EXISTING_TRANSACTION | nsLayoutUtils::PaintFrameFlags::PAINT_NO_COMPOSITE)) at /var/clean/mozppc/mozilla-unified/layout/base/nsLayoutUtils.cpp:3912 #34 0x00003fff850f4780 in mozilla::PresShell::Paint(nsView*, nsRegion const&, unsigned int) (this=0x15afe7660, aViewToPaint=0x15bcef680, aDirtyRegion=..., aFlags=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/base/PresShell.cpp:6369 #35 0x00003fff84e75528 in nsViewManager::ProcessPendingUpdatesPaint(nsIWidget*) (this=0x15bcef5c0, aWidget=0x15bbe77a0) at /var/clean/mozppc/mozilla-unified/view/nsViewManager.cpp:480 #36 0x00003fff84e75838 in nsViewManager::ProcessPendingUpdatesForView(nsView*, bool) (this=0x15bcef5c0, aView=<optimized out>, aFlushDirtyRegion=true) at /var/clean/mozppc/mozilla-unified/view/nsViewManager.cpp:412 #37 0x00003fff84e75940 in nsViewManager::ProcessPendingUpdates() (this=0x15bcef5c0) at /var/clean/mozppc/mozilla-unified/view/nsViewManager.cpp:1102 #38 0x00003fff850c044c in nsRefreshDriver::Tick(mozilla::TimeStamp) (this=0x15bcef0a0, aNowTime=...) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:2048 #39 0x00003fff850c7e98 in mozilla::RefreshDriverTimer::TickDriver(nsRefreshDriver*, mozilla::TimeStamp) (now=..., driver=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:326 #40 0x00003fff850c7e98 in mozilla::RefreshDriverTimer::TickRefreshDrivers(mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) (aNow=..., aDrivers=nsTArray<RefPtr<nsRefreshDriver> > & = {...}, this=0x15ba4eee0) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:301 #41 0x00003fff850c7f7c in mozilla::RefreshDriverTimer::Tick(mozilla::TimeStamp) (this=0x15ba4eee0, now=...) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:319 #42 0x00003fff850c8190 in mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers(mozilla::TimeStamp) (aTimeStamp=..., this=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:760 #43 0x00003fff850c8190 in mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::TimeStamp) (this=0x15ba5e6a0, aVsyncTimestamp=...) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:676 #44 0x00003fff850c8630 in mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() (this=0x15d316220) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:514 #45 0x00003fff82497ccc in nsThread::ProcessNextEvent(bool, bool*) (this=0x15aa6a160, aMayWait=<optimized out>, aResult=0x3fffcbfd1327) at /var/clean/mozppc/mozilla-unified/xpcom/threads/nsThread.cpp:1245 #46 0x00003fff82490354 in NS_ProcessNextEvent(nsIThread*, bool) (aThread=0x15aa6a160, aMayWait=<optimized out>) at /var/clean/mozppc/mozilla-unified/xpcom/threads/nsThreadUtils.cpp:530 #47 0x00003fff8293b724 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x15aa68b00, aDelegate=0x15aa68160) at /var/clean/mozppc/mozilla-unified/ipc/glue/MessagePump.cpp:125 #48 0x00003fff828fd514 in MessageLoop::RunInternal() (this=0x15aa68160) at /var/clean/mozppc/mozilla-unified/ipc/chromium/src/base/message_loop.cc:325 #49 0x00003fff828fd5c8 in MessageLoop::RunHandler() (this=0x15aa68160) at /var/clean/mozppc/mozilla-unified/ipc/chromium/src/base/message_loop.cc:318 #50 0x00003fff828fd5c8 in MessageLoop::Run() (this=0x15aa68160) at /var/clean/mozppc/mozilla-unified/ipc/chromium/src/base/message_loop.cc:298 #51 0x00003fff84eb7330 in nsBaseAppShell::Run() (this=0x15b040940) at /var/clean/mozppc/mozilla-unified/widget/nsBaseAppShell.cpp:158 #52 0x00003fff861bd0d8 in nsAppStartup::Run() (this=0x15b040880) at /var/clean/mozppc/mozilla-unified/toolkit/components/startup/nsAppStartup.cpp:290 #53 0x00003fff86294c24 in XREMain::XRE_mainRun() (this=0x3fffcbfd1810) at /var/clean/mozppc/mozilla-unified/toolkit/xre/nsAppRunner.cpp:4777 #54 0x00003fff86295478 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=0x3fffcbfd1810, argc=4, argv=0x3fffcbfd2b98, aConfig=...) at /var/clean/mozppc/mozilla-unified/toolkit/xre/nsAppRunner.cpp:4922 #55 0x00003fff862957c0 in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=<optimized out>, argv=0x3fffcbfd2b98, aConfig=...) at /var/clean/mozppc/mozilla-unified/toolkit/xre/nsAppRunner.cpp:5014 #56 0x00003fff862a3bf4 in mozilla::BootstrapImpl::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=<optimized out>, argc=<optimized out>, argv=<optimized out>, aConfig=...) at /var/clean/mozppc/mozilla-unified/toolkit/xre/Bootstrap.cpp:49 #57 0x000000013c4bac10 in do_main(int, char**, char**) (argc=<optimized out>, argv=0x3fffcbfd2b98, envp=<optimized out>) at /var/clean/mozppc/mozilla-unified/browser/app/nsBrowserApp.cpp:237 #58 0x000000013c4ba470 in main(int, char**, char**) (argc=<optimized out>, argv=0x3fffcbfd2b98, envp=0x3fffcbfd2bc0) at /var/clean/mozppc/mozilla-unified/browser/app/nsBrowserApp.cpp:329 Have not yet had a chance to triage this. Suspecting something in the font layer is non-endian aware and we were just getting away with it before due to lack of assertions in Skia (while rare, I have seen some text show up in the wrong colours on Firefox 64).
Updated•6 years ago
|
Flags: needinfo?(lsalzman)
Priority: -- → P3
Assignee | ||
Updated•6 years ago
|
Flags: needinfo?(lsalzman)
Priority: P3 → P5
Assignee | ||
Comment 1•6 years ago
|
||
If you can look into this, it would help. Otherwise, given that this only reproduces on big-endian hardware, I have no way to reproduce or investigate myself. My suspicion is that this may be a case of inappropriate rounding of the color values inside SkPaint so that SkPaint::setAlpha is producing an alpha values slightly less than 1.0, which when queried with SkPaint::getAlpha produces 254 instead of 255. This should be easy to check on your end.
Flags: needinfo?(AWilcox)
Reporter | ||
Comment 2•6 years ago
|
||
Logging the setAlpha calls: awilcox on gwyn [pts/12 Sun 4 2:09] mozilla-unified: LD_LIBRARY_PATH=/var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/dist/bin CC=gcc CXX=g++ ./mach run 0:00.37 /var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/dist/bin/firefox -no-remote -profile /var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/tmp/profile-default ++DOCSHELL 0x1699dbe00 == 1 [pid = 13868] [id = {050e4e66-3ff7-4c4a-9998-7c374dd1863f}] ++DOMWINDOW == 1 (0x169a53d20) [pid = 13868] [serial = 1] [outer = 0] ++DOMWINDOW == 2 (0x169af7be0) [pid = 13868] [serial = 2] [outer = 0x169a53d20] ++DOCSHELL 0x169d84040 == 2 [pid = 13868] [id = {6974a495-8bb5-4ffb-aecb-9622251d7556}] ++DOMWINDOW == 3 (0x169d84a40) [pid = 13868] [serial = 3] [outer = 0] ++DOMWINDOW == 4 (0x169d88d60) [pid = 13868] [serial = 4] [outer = 0x169d84a40] ++DOMWINDOW == 5 (0x169573560) [pid = 13868] [serial = 5] [outer = 0x169a53d20] ++DOCSHELL 0x16a6167c0 == 3 [pid = 13868] [id = {34cf7392-43d5-45af-9608-827c7ff70b80}] ++DOMWINDOW == 6 (0x16a616e60) [pid = 13868] [serial = 6] [outer = 0] ++DOCSHELL 0x16b034540 == 4 [pid = 13868] [id = {8d32ca13-8af9-4f9b-b73d-d3dae1873840}] ++DOMWINDOW == 7 (0x16b034dc0) [pid = 13868] [serial = 7] [outer = 0] ++DOMWINDOW == 8 (0x16a021aa0) [pid = 13868] [serial = 8] [outer = 0x16b034dc0] ++DOMWINDOW == 9 (0x16af24b60) [pid = 13868] [serial = 9] [outer = 0x16a616e60] Couldn't convert chrome URL: chrome://branding/locale/brand.properties ++DOCSHELL 0x122944600 == 1 [pid = 13920] [id = {78b220f7-0645-4cfc-a69e-d3ca52d8dd66}] SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 102 => 0.400000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 102 => 0.400000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 102 => 0.400000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkBlitter_ARGB32.cpp:167: fatal error: "assert(fSrcA != 0xFF)" Forcing abort on the first non-255 value: awilcox on gwyn [pts/12 Sun 4 2:19] mozilla-unified: LD_LIBRARY_PATH=/var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/dist/bin CC=gcc CXX=g++ ./mach run 0:00.37 /var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/dist/bin/firefox -no-remote -profile /var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/tmp/profile-default ++DOCSHELL 0x14dc12140 == 1 [pid = 18832] [id = {06af10d4-58b1-480f-b744-5f8346f098bc}] ++DOMWINDOW == 1 (0x14dc014e0) [pid = 18832] [serial = 1] [outer = 0] ++DOMWINDOW == 2 (0x14dcbbea0) [pid = 18832] [serial = 2] [outer = 0x14dc014e0] ++DOCSHELL 0x14df481e0 == 2 [pid = 18832] [id = {b146a424-567f-4ec6-bb78-350ca487c74a}] ++DOMWINDOW == 3 (0x14df48c00) [pid = 18832] [serial = 3] [outer = 0] ++DOMWINDOW == 4 (0x14df4cf20) [pid = 18832] [serial = 4] [outer = 0x14df48c00] ++DOMWINDOW == 5 (0x14d7317e0) [pid = 18832] [serial = 5] [outer = 0x14dc014e0] ++DOCSHELL 0x14e6d4da0 == 3 [pid = 18832] [id = {169a10ef-47c6-4a87-82dd-19eb21dd9bdd}] ++DOMWINDOW == 6 (0x14e6d5440) [pid = 18832] [serial = 6] [outer = 0] GLib-GIO-Message: 02:40:27.959: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications. ++DOCSHELL 0x14f18d400 == 4 [pid = 18832] [id = {85d7e3da-dc9d-4b75-bf6f-8bc3c80f6f35}] ++DOMWINDOW == 7 (0x14f18dcc0) [pid = 18832] [serial = 7] [outer = 0] ++DOMWINDOW == 8 (0x14e201de0) [pid = 18832] [serial = 8] [outer = 0x14f18dcc0] ++DOMWINDOW == 9 (0x14f44d760) [pid = 18832] [serial = 9] [outer = 0x14e6d5440] SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 255 => 1.000000 SkPaint::setAlpha: 102 => 0.400000 /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkPaint.cpp:269: fatal error: "Transparency!" Abort from sk_abort Hit MOZ_CRASH() at /var/clean/mozppc/mozilla-unified/memory/mozalloc/mozalloc_abort.cpp:35 Thread 1 "firefox" received signal SIGSEGV, Segmentation fault. 0x00000001325bd2b0 in mozalloc_abort (msg=<optimized out>) at /var/clean/mozppc/mozilla-unified/memory/mozalloc/mozalloc_abort.cpp:35 35 MOZ_CRASH(); (gdb) bt #0 0x00000001325bd2b0 in mozalloc_abort(char const*) (msg=<optimized out>) at /var/clean/mozppc/mozilla-unified/memory/mozalloc/mozalloc_abort.cpp:35 #1 0x00003fffb7723fc0 in sk_abort_no_print() () at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/ports/SkMemory_mozalloc.cpp:24 #2 0x00003fffb77f64bc in SkPaint::setAlpha(unsigned int) (this=0x3fffc0e91b58, a=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkPaint.cpp:269 #3 0x00003fffb4cba3e8 in mozilla::gfx::DrawTargetSkia::PushLayerWithBlend(bool, float, mozilla::gfx::SourceSurface*, mozilla::gfx::BaseMatrix<float> const&, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, bool, mozilla::gfx::CompositionOp) (this= 0x14eabf7e0, aOpaque=<optimized out>, aOpacity=<optimized out>, aMask=0x0, aMaskTransform=..., aBounds=..., aCopyBackground=<optimized out>, aCompositionOp=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/2d/DrawTargetSkia.cpp:2111 #4 0x00003fffb4cb3da8 in mozilla::gfx::DrawTargetSkia::PushLayer(bool, float, mozilla::gfx::SourceSurface*, mozilla::gfx::BaseMatrix<float> const&, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, bool) (this=<optimized out>, aOpaque=<optimized out>, aOpacity=<optimized out>, aMask=<optimized out>, aMaskTransform=..., aBounds=..., aCopyBackground=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/2d/DrawTargetSkia.cpp:2098 #5 0x00003fffb5001afc in gfxContext::PushGroupForBlendBack(gfxContentType, float, mozilla::gfx::SourceSurface*, mozilla::gfx::BaseMatrix<float> const&) (this=<optimized out>, content=<optimized out>, aOpacity=<optimized out>, aMask=<optimized out>, aMaskTransform=...) at /var/clean/mozppc/mozilla-unified/gfx/thebes/gfxContext.cpp:769 #6 0x00003fffb70af2d8 in mozilla::PushOpacity (aItem=..., aContext=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/painting/FrameLayerBuilder.cpp:7250 #7 0x00003fffb70af2d8 in mozilla::FrameLayerBuilder::PaintItems(std::vector<mozilla::AssignedDisplayItem, std::allocator<mozilla::AssignedDisplayItem> >&, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, gfxContext*, nsDisplayListBuilder*, nsPresContext*, mozilla::gfx::IntPointTyped<mozilla::gfx::UnknownUnits> const&, float, float) (this=0x14d5a3cc0, aItems=..., aRect=..., aContext=0x14f3e8c00, aBuilder=0x3fffc0e92de0, aPresContext=0x14e043fe0, aOffset=..., aXScale=<optimized out>, aYScale=1) at /var/clean/mozppc/mozilla-unified/layout/painting/FrameLayerBuilder.cpp:7428 #8 0x00003fffb70b0748 in mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*) (aLayer=0x14e0f2f00, aContext=0x14f3e8c00, aRegionToDraw=..., aDirtyRegion=..., aClip=<optimized out>, aRegionToInvalidate=..., aCallbackData=0x3fffc0e92de0) at /var/clean/mozppc/mozilla-unified/layout/painting/FrameLayerBuilder.cpp:7688 #9 0x00003fffb4f0a28c in mozilla::layers::ClientPaintedLayer::RenderLayerWithReadback(mozilla::layers::ReadbackProcessor*) (this=0x14e0f2f00, aReadback=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientPaintedLayer.cpp:166 #10 0x00003fffb4f158f0 in mozilla::layers::ClientContainerLayer::RenderLayer() (this=0x14ec3e460) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientContainerLayer.h:58 #11 0x00003fffb4f03b8c in mozilla::layers::ClientLayerManager::EndTransactionInternal(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags) (this=0x14f2d3ee0, aCallback=0x3fffb70b028c <mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*)>, aCallbackData=0x3fffc0e92de0) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientLayerManager.cpp:331 #12 0x00003fffb4f10a14 in mozilla::layers::ClientLayerManager::EndTransaction(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags) (this=0x14f2d3ee0, aCallback=0x3fffb70b028c <mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*)>, aCallbackData=0x3fffc0e92de0, aFlags=<optimized out>) at /var/clean/mozppc/mozilla-unified/gfx/layers/client/ClientLayerManager.cpp:389 #13 0x00003fffb70b5d38 in nsDisplayList::PaintRoot(nsDisplayListBuilder*, gfxContext*, unsigned int) (this=0x3fffc0e92c30, aBuilder=0x3fffc0e92de0, aCtx=<optimized out>, aFlags=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/painting/nsDisplayList.cpp:2833 #14 0x00003fffb6dbcb20 in nsLayoutUtils::PaintFrame(gfxContext*, nsIFrame*, nsRegion const&, unsigned int, nsDisplayListBuilderMode, nsLayoutUtils::PaintFrameFlags) (aRenderingContext=0x0, aFrame= 0x14ebc6e60, aDirtyRegion=..., aBackstop=<optimized out>, aBuilderMode=<optimized out>, aFlags=(nsLayoutUtils::PaintFrameFlags::PAINT_WIDGET_LAYERS | nsLayoutUtils::PaintFrameFlags::PAINT_EXISTING_TRANSACTION | nsLayoutUtils::PaintFrameFlags::PAINT_NO_COMPOSITE)) at /var/clean/mozppc/mozilla-unified/layout/base/nsLayoutUtils.cpp:3974 #15 0x00003fffb6d61dc0 in mozilla::PresShell::Paint(nsView*, nsRegion const&, unsigned int) (this=0x14e047920, aViewToPaint=0x14e044ec0, aDirtyRegion=..., aFlags=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/base/PresShell.cpp:6369 #16 0x00003fffb6ae2d08 in nsViewManager::ProcessPendingUpdatesPaint(nsIWidget*) (this=0x14e044e00, aWidget=0x14df37980) at /var/clean/mozppc/mozilla-unified/view/nsViewManager.cpp:480 #17 0x00003fffb6ae3018 in nsViewManager::ProcessPendingUpdatesForView(nsView*, bool) (this=0x14e044e00, aView=<optimized out>, aFlushDirtyRegion=true) at /var/clean/mozppc/mozilla-unified/view/nsViewManager.cpp:412 #18 0x00003fffb6ae3120 in nsViewManager::ProcessPendingUpdates() (this=0x14e044e00) at /var/clean/mozppc/mozilla-unified/view/nsViewManager.cpp:1102 #19 0x00003fffb6d2da14 in nsRefreshDriver::Tick(mozilla::TimeStamp) (this=0x14e0448e0, aNowTime=...) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:2048 #20 0x00003fffb6d35460 in mozilla::RefreshDriverTimer::TickDriver(nsRefreshDriver*, mozilla::TimeStamp) (now=..., driver=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:326 #21 0x00003fffb6d35460 in mozilla::RefreshDriverTimer::TickRefreshDrivers(mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) (aNow=..., aDrivers=nsTArray<RefPtr<nsRefreshDriver> > & = {...}, this=0x14ddb6a00) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:301 #22 0x00003fffb6d35544 in mozilla::RefreshDriverTimer::Tick(mozilla::TimeStamp) (this=0x14ddb6a00, now=...) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:319 #23 0x00003fffb6d35758 in mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers(mozilla::TimeStamp) (aTimeStamp=..., this=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:760 #24 0x00003fffb6d35758 in mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::TimeStamp) (this=0x14ddb6a80, aVsyncTimestamp=...) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:676 #25 0x00003fffb6d35bf8 in mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() (this=0x14ecc7f00) at /var/clean/mozppc/mozilla-unified/layout/base/nsRefreshDriver.cpp:514 #26 0x00003fffb40fd8f8 in nsThread::ProcessNextEvent(bool, bool*) (this=0x14cdd8fc0, aMayWait=<optimized out>, aResult=0x3fffc0e96517) at /var/clean/mozppc/mozilla-unified/xpcom/threads/nsThread.cpp:1246 #27 0x00003fffb40f5ee8 in NS_ProcessNextEvent(nsIThread*, bool) (aThread=0x14cdd8fc0, aMayWait=<optimized out>) at /var/clean/mozppc/mozilla-unified/xpcom/threads/nsThreadUtils.cpp:530 #28 0x00003fffb45a2cf0 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x14cdd7940, aDelegate=0x14cdd6f80) at /var/clean/mozppc/mozilla-unified/ipc/glue/MessagePump.cpp:97 #29 0x00003fffb4564b84 in MessageLoop::RunInternal() (this=0x14cdd6f80) at /var/clean/mozppc/mozilla-unified/ipc/chromium/src/base/message_loop.cc:325 #30 0x00003fffb4564c38 in MessageLoop::RunHandler() (this=0x14cdd6f80) at /var/clean/mozppc/mozilla-unified/ipc/chromium/src/base/message_loop.cc:318 #31 0x00003fffb4564c38 in MessageLoop::Run() (this=0x14cdd6f80) at /var/clean/mozppc/mozilla-unified/ipc/chromium/src/base/message_loop.cc:298 #32 0x00003fffb6b248e0 in nsBaseAppShell::Run() (this=0x14d3aeae0) at /var/clean/mozppc/mozilla-unified/widget/nsBaseAppShell.cpp:158 #33 0x00003fffb7e2b168 in nsAppStartup::Run() (this=0x14d3aea20) at /var/clean/mozppc/mozilla-unified/toolkit/components/startup/nsAppStartup.cpp:290 #34 0x00003fffb7f05120 in XREMain::XRE_mainRun() (this=0x3fffc0e96a00) at /var/clean/mozppc/mozilla-unified/toolkit/xre/nsAppRunner.cpp:4784 #35 0x00003fffb7f05974 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=0x3fffc0e96a00, argc=4, argv=0x3fffc0e97d88, aConfig=...) at /var/clean/mozppc/mozilla-unified/toolkit/xre/nsAppRunner.cpp:4929 #36 0x00003fffb7f05cbc in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=<optimized out>, argv=0x3fffc0e97d88, aConfig=...) at /var/clean/mozppc/mozilla-unified/toolkit/xre/nsAppRunner.cpp:5021 #37 0x00003fffb7f140f0 in mozilla::BootstrapImpl::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=<optimized out>, argc=<optimized out>, argv=<optimized out>, aConfig=...) at /var/clean/mozppc/mozilla-unified/toolkit/xre/Bootstrap.cpp:49 #38 0x00000001325bcc10 in do_main(int, char**, char**) (argc=<optimized out>, argv=0x3fffc0e97d88, envp=<optimized out>) at /var/clean/mozppc/mozilla-unified/browser/app/nsBrowserApp.cpp:237 #39 0x00000001325bc470 in main(int, char**, char**) (argc=<optimized out>, argv=0x3fffc0e97d88, envp=0x3fffc0e97db0) at /var/clean/mozppc/mozilla-unified/browser/app/nsBrowserApp.cpp:329 (gdb) frame 6 #6 0x00003fffb70af2d8 in mozilla::PushOpacity (aItem=..., aContext=<optimized out>) at /var/clean/mozppc/mozilla-unified/layout/painting/FrameLayerBuilder.cpp:7250 7250 aContext->PushGroupForBlendBack(gfxContentType::COLOR_ALPHA, opacity); (gdb) p aItem $1 = (mozilla::AssignedDisplayItem &) @0x14e6c9e58: {mItem = 0x14ecd97c0, mLayerState = mozilla::LAYER_NONE, mDisplayItemData = 0x0, mContentRect = {<mozilla::gfx::BaseRect<int, nsRect, nsPoint, nsSize, nsMargin>> = {x = 2340, y = 2340, width = 1680, height = 1680}, <No data fields>}, mInactiveLayerManager = [(mozilla::layers::LayerManager *) 0x0], mTransform = [(mozilla::TransformClipNode *) 0x0], mType = mozilla::DisplayItemEntryType::PUSH_OPACITY, mReused = false, mMerged = false, mHasOpacity = false, mHasTransform = false, mHasPaintRect = false} (gdb) p *aItem.mItem $2 = (nsDisplayOpacity) {<nsDisplayWrapList> = {<nsDisplayHitTestInfoItem> = {<nsDisplayItem> = {<nsDisplayItemLink> = {mAbove = 0x14ecd9dc0}, _vptr.nsDisplayItem = 0x3fffbbf803a8 <vtable for nsDisplayOpacity+16>, mFrame = 0x14ef96a48, mClipChain = [(const mozilla::DisplayItemClipChain *) 0x0], mClip = 0x0, mActiveScrolledRoot = [(const mozilla::ActiveScrolledRoot *) 0x0], mReferenceFrame = 0x14ebc6e60, mAnimatedGeometryRoot = [(AnimatedGeometryRoot *) 0x14e705ca0], mToReferenceFrame = {<mozilla::gfx::BasePoint<int, nsPoint, int>> = {{{x = 2220, y = 1980}, components = {2220, 1980}}}, <No data fields>}, mDisplayItemData = 0x14f18f5f0, mDisplayItemDataLayerManager = 0x14f2d3ee0, mBuildingRect = {<mozilla::gfx::BaseRect<int, nsRect, nsPoint, nsSize, nsMargin>> = {x = 0, y = 1980, width = 74280, height = 2400}, <No data fields>}, mPaintRect = {<mozilla::gfx::BaseRect<int, nsRect, nsPoint, nsSize, nsMargin>> = {x = 2340, y = 2340, width = 1680, height = 1680}, <No data fields>}, mOldListKey = 0, mOldNestingDepth = 0, mMergedItem = false, mPreProcessedItem = false, mOldListIndex = {val = 0}, mOldList = 0, mForceNotVisible = false, mDisableSubpixelAA = false, mReusedItem = false, mBackfaceHidden = false, mPaintRectValid = true, mPainted = false, mState = {mClipChain = [(const mozilla::DisplayItemClipChain *) 0x14ecd8fc0], mClip = 0x14ecd8fc0}}, mHitTestInfo = [(HitTestInfo *) 0x14e6d11a0]}, mList = {<nsDisplayList> = { _vptr.nsDisplayList = 0x3fffbbf4acd0 <vtable for RetainedDisplayList+16>, mSentinel = {mAbove = 0x14ecd96c0}, mTop = 0x14ecd96c8, mLength = 1, mIsOpaque = false, mForceTransparentSurface = false}, mDAG = { mNodesInfo = nsTArray<DirectedAcyclicGraph<MergedListUnits>::NodeInfo>, mDirectPredecessorList = nsTArray<Index<MergedListUnits> >}, mOldItems = nsTArray<OldItemInfo>}, mListPtr = 0x14ecd9878, mFrameActiveScrolledRoot = [(const mozilla::ActiveScrolledRoot *) 0x0], mMergedFrames = nsTArray<nsIFrame*>, mBounds = {<mozilla::gfx::BaseRect<int, nsRect, nsPoint, nsSize, nsMargin>> = {x = 2340, y = 2340, width = 1680, height = 1680}, <No data fields>}, mBaseBuildingRect = {<mozilla::gfx::BaseRect<int, nsRect, nsPoint, nsSize, nsMargin>> = {x = 0, y = 1980, width = 74280, height = 2400}, <No data fields>}, mOverrideZIndex = 0, mIndex = 0, mHasZIndexOverride = false, mClearingClipChain = true}, mOpacity = 0.400000006, mForEventsAndPluginsOnly = false, mNeedsActiveLayer = false, mChildOpacityState = nsDisplayOpacity::ChildOpacityState::Deferred, mState = {mOpacity = 0.400000006}} (gdb) This all looks legitimate to me. Now, let's see the getAlpha calls too: awilcox on gwyn [pts/12 Sun 4 2:59] mozilla-unified: LD_LIBRARY_PATH=/var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/dist/bin CC=gcc CXX=g++ ./mach run 0:00.37 /var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/dist/bin/firefox -no-remote -profile /var/clean/mozppc/mozilla-unified/obj-powerpc64-foxkit-linux-musl/tmp/profile-default ++DOCSHELL 0x13f129240 == 1 [pid = 37022] [id = {bd96c7e6-ccad-478d-9839-3e50ad4d016a}] ++DOMWINDOW == 1 (0x13f17c000) [pid = 37022] [serial = 1] [outer = 0] ++DOMWINDOW == 2 (0x13f26c880) [pid = 37022] [serial = 2] [outer = 0x13f17c000] ++DOCSHELL 0x13f4f8080 == 2 [pid = 37022] [id = {abca46fc-55bf-4833-be1b-03aa8a1a72af}] ++DOMWINDOW == 3 (0x13f4f85a0) [pid = 37022] [serial = 3] [outer = 0] ++DOMWINDOW == 4 (0x13f4f92a0) [pid = 37022] [serial = 4] [outer = 0x13f4f85a0] ++DOMWINDOW == 5 (0x13ecfb300) [pid = 37022] [serial = 5] [outer = 0x13f17c000] ++DOCSHELL 0x13fd8a4a0 == 3 [pid = 37022] [id = {94c6d402-8693-48b1-b2aa-b67a5b2098b0}] ++DOMWINDOW == 6 (0x13fd8ab40) [pid = 37022] [serial = 6] [outer = 0] ++DOCSHELL 0x14079f120 == 4 [pid = 37022] [id = {625c8897-11b2-4e30-952a-ca2f36139ddf}] ++DOMWINDOW == 7 (0x14079f5a0) [pid = 37022] [serial = 7] [outer = 0] ++DOMWINDOW == 8 (0x13f7c0540) [pid = 37022] [serial = 8] [outer = 0x14079f5a0] ++DOMWINDOW == 9 (0x140691740) [pid = 37022] [serial = 9] [outer = 0x13fd8ab40] Couldn't convert chrome URL: chrome://branding/locale/brand.properties ++DOCSHELL 0x132573cc0 == 1 [pid = 37071] [id = {2608108f-45c0-45da-84f1-68ae9666589d}] ++DOMWINDOW == 1 (0x132e251e0) [pid = 37071] [serial = 1] [outer = 0] ++DOMWINDOW == 2 (0x132bfb6c0) [pid = 37071] [serial = 2] [outer = 0x132e251e0] SkPaint::setAlpha: 255 => 1.000000 getAlpha => 250 getAlpha => 250 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 196 getAlpha => 196 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 0 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 241 getAlpha => 241 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 0 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 0 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 252 getAlpha => 252 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 233 getAlpha => 233 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 102 => 0.400000 getAlpha => 102 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 getAlpha => 102 getAlpha => 102 getAlpha => 102 SkPaint::setAlpha: 102 => 0.400000 getAlpha => 102 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 getAlpha => 102 getAlpha => 102 getAlpha => 102 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 102 => 0.400000 getAlpha => 102 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 13 getAlpha => 13 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 102 getAlpha => 102 getAlpha => 102 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 0 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 241 getAlpha => 241 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 0 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 233 getAlpha => 233 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 255 getAlpha => 255 getAlpha => 255 SkPaint::setAlpha: 255 => 1.000000 getAlpha => 39 getAlpha => 39 /var/clean/mozppc/mozilla-unified/gfx/skia/skia/src/core/SkBlitter_ARGB32.cpp:167: fatal error: "assert(fSrcA != 0xFF)" Abort from sk_abort The thing is, the assertion is "alpha != 255", which means it is failing because alpha *is* 255. So isn't that what we should actually be poking at? The cases where it *is* 255? I'll continue poking, but further guidance is welcome.
Flags: needinfo?(AWilcox) → needinfo?(lsalzman)
Assignee | ||
Comment 3•6 years ago
|
||
Oops, a misreading on my part. That would then rather imply that SkBlitter::Choose is somehow getting bad color values.
Flags: needinfo?(lsalzman)
Assignee | ||
Comment 4•6 years ago
|
||
Try this patch and let me know if it fixes the issue. This code, as far as I can see, was just flat out wrong or rather not accounting for big-endian at all. It does not seem like upstream is effectively testing against big-endian platforms when they make changes.
Attachment #9022478 -
Flags: review?(AWilcox)
Reporter | ||
Comment 5•6 years ago
|
||
Comment on attachment 9022478 [details] [diff] [review] fix SkColor4f to SkColor conversion on big-endian Looks good and fixes this bug entirely. Thank you so much!
Attachment #9022478 -
Flags: review?(AWilcox) → review+
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/5d4e3be63538 fix SkColor4f to SkColor conversion on big-endian. r=awilfox
Assignee | ||
Updated•6 years ago
|
Assignee: nobody → lsalzman
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Whiteboard: [gfx-noted]
Comment 7•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/5d4e3be63538
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
You need to log in
before you can comment on or make changes to this bug.
Description
•