Open
Bug 1305074
Opened 8 years ago
Updated 2 years ago
sk_abort: SkRect.h: fatal error: ""!r.isEmpty()"" in GrAtlasTextBlob::appendGlyph
Categories
(Core :: Graphics, defect, P5)
Tracking
()
NEW
Tracking | Status | |
---|---|---|
firefox52 | --- | affected |
People
(Reporter: truber, Unassigned)
References
Details
(Keywords: assertion, testcase, Whiteboard: [gfx-noted])
Attachments
(2 files)
Attached testcase triggers a skia abort in mozilla-central revision 60cc643978c7 (debug).
Reporter | ||
Comment 1•8 years ago
|
||
Reporter | ||
Comment 2•8 years ago
|
||
Assertion:
/builds/slave/m-cen-m64-d-000000000000000000/build/src/gfx/skia/skia/include/core/SkRect.h:744: fatal error: ""!r.isEmpty()""
Abort from sk_abort
Hit MOZ_CRASH() at /builds/slave/m-cen-m64-d-000000000000000000/build/src/memory/mozalloc/mozalloc_abort.cpp:33
Stacktrace:
0|0|libmozglue.dylib|mozalloc_abort(char const*)|hg:hg.mozilla.org/mozilla-central:memory/mozalloc/mozalloc_abort.cpp:60cc643978c7|33|0x0
0|1|XUL|sk_abort_no_print()|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/ports/SkMemory_mozalloc.cpp:60cc643978c7|16|0xc
0|2|XUL|GrAtlasTextBlob::appendGlyph(int, SkRect const&, unsigned int, GrBatchTextStrike*, GrGlyph*, GrFontScaler*, SkGlyph const&, float, float, float, bool)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/include/core/SkRect.h:60cc643978c7|744|0x26
0|3|XUL|GrTextUtils::BmpAppendGlyph(GrAtlasTextBlob*, int, GrBatchFontCache*, GrBatchTextStrike**, SkGlyph const&, int, int, unsigned int, GrFontScaler*)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/gpu/text/GrTextUtils.cpp:60cc643978c7|152|0x30
0|4|XUL|SkFindAndPlaceGlyph::GlyphFindAndPlaceSubpixel<GrTextUtils::DrawBmpPosText(GrAtlasTextBlob*, int, GrBatchFontCache*, SkSurfaceProps const&, SkPaint const&, unsigned int, SkPaint::FakeGamma, SkMatrix const&, char const*, unsigned long, float const*, int, SkPoint const&)::$_1, (SkPaint::Align)0, (SkAxisAlignment)1>::findAndPositionGlyph(char const**, SkPoint, (GrTextUtils::DrawBmpPosText&&)(GrAtlasTextBlob*, int, GrBatchFontCache*, SkSurfaceProps const&, SkPaint const&, unsigned int, SkPaint::FakeGamma, SkMatrix const&, char const*, unsigned long, float const*, int, SkPoint const&)::$_1)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/gpu/text/GrTextUtils.cpp:60cc643978c7|112|0x24
0|5|XUL|GrTextUtils::DrawBmpPosText(GrAtlasTextBlob*, int, GrBatchFontCache*, SkSurfaceProps const&, SkPaint const&, unsigned int, SkPaint::FakeGamma, SkMatrix const&, char const*, unsigned long, float const*, int, SkPoint const&)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/core/SkFindAndPlaceGlyph.h:60cc643978c7|685|0x17
0|6|XUL|GrAtlasTextContext::CreateDrawPosTextBlob(GrTextBlobCache*, GrBatchFontCache*, GrShaderCaps const&, GrPaint const&, SkPaint const&, SkPaint::FakeGamma, SkMatrix const&, SkSurfaceProps const&, char const*, unsigned long, float const*, int, SkPoint const&)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/gpu/text/GrAtlasTextContext.cpp:60cc643978c7|310|0x31
0|7|XUL|GrAtlasTextContext::drawPosText(GrContext*, GrDrawContext*, GrClip const&, GrPaint const&, SkPaint const&, SkMatrix const&, SkSurfaceProps const&, char const*, unsigned long, float const*, int, SkPoint const&, SkIRect const&)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/gpu/text/GrAtlasTextContext.cpp:60cc643978c7|358|0x4d
0|8|XUL|GrDrawContext::drawPosText(GrClip const&, GrPaint const&, SkPaint const&, SkMatrix const&, char const*, unsigned long, float const*, int, SkPoint const&, SkIRect const&)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/gpu/GrDrawContext.cpp:60cc643978c7|146|0x3a
0|9|XUL|SkGpuDevice::drawPosText(SkDraw const&, void const*, unsigned long, float const*, int, SkPoint const&, SkPaint const&)|hg:hg.mozilla.org/mozilla-central:gfx/skia/skia/src/gpu/SkGpuDevice.cpp:60cc643978c7|1797|0x42
Comment 3•8 years ago
|
||
This is mostly caused by numerical precision being stressed, mainly just triggers some debug code to assert in Skia but otherwise doesn't have any harmful consequence, and is not otherwise easy to fix. Ideally we should handle this via the mechanism in bug 1305151 rather than trying to fix directly.
Has STR: --- → yes
Priority: -- → P5
Whiteboard: [gfx-noted]
Updated•7 years ago
|
Has Regression Range: --- → irrelevant
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•