Closed Bug 1349220 Opened 7 years ago Closed 7 years ago

DEBUG Crash due to SkASSERT in gfx/skia/skia/src/core/SkScalerContext.h

Categories

(Core :: Graphics, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1348584
Tracking Status
firefox55 --- affected

People

(Reporter: bobowen, Unassigned)

References

Details

The patch for bug 1345222 causes a start-up crash for me in my debug build.

The contrast being passed in is 3.
The immediate place that this is coming from is [2].

[1] https://hg.mozilla.org/mozilla-central/file/01c54613bf73/gfx/skia/skia/src/core/SkScalerContext.h#l76
[2] https://hg.mozilla.org/mozilla-central/file/01c54613bf73/gfx/skia/skia/src/ports/SkTypeface_win_dw.cpp#l289
Flags: needinfo?(VYV03354)
Is SkScalerContext::Rec compatible with IDWriteRenderingParams?
The former limits the contrast value range to [0.0, 1.0] while the latter can take larger value than 1.0 per bug 642589 comment #44.
Flags: needinfo?(jfkthame)
Flags: needinfo?(bas)
Flags: needinfo?(VYV03354)
See Also: → 1348584
(In reply to Masatoshi Kimura [:emk] from comment #1)
> Is SkScalerContext::Rec compatible with IDWriteRenderingParams?
> The former limits the contrast value range to [0.0, 1.0] while the latter
> can take larger value than 1.0 per bug 642589 comment #44.

What do you mean by compatible? I have a hunch that we can remove the assertions and force Skia to create a contrast table up to 6.0, but it's probably going to be untested and will look off. Will try and report back.
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(jfkthame)
Flags: needinfo?(bas)
Resolution: --- → DUPLICATE
I tried fiddling with the skia contrast table and anything past 1.0 immediately becomes a colorful goop of blurred pixels. We'll fix this in the duped bug.
(In reply to Mason Chang [:mchang] from comment #2)
> > Is SkScalerContext::Rec compatible with IDWriteRenderingParams?
> > The former limits the contrast value range to [0.0, 1.0] while the latter
> > can take larger value than 1.0 per bug 642589 comment #44.
> 
> What do you mean by compatible? I have a hunch that we can remove the
> assertions and force Skia to create a contrast table up to 6.0, but it's
> probably going to be untested and will look off. Will try and report back.

Do these values have the same meaning?
DWrite EnhancedContrast value can take the value at least up to 4.0 while Skia constrast value can only take up to 1.0.
https://hg.mozilla.org/mozilla-central/file/01c54613bf73/gfx/skia/skia/src/ports/SkTypeface_win_dw.cpp#l289
is just copying DWrite EnhancedContrast to Skia constrast. It does not make sense if both values do not share the same meaning.
(In reply to Masatoshi Kimura [:emk] from comment #5)
> Do these values have the same meaning?
> DWrite EnhancedContrast value can take the value at least up to 4.0 while
> Skia constrast value can only take up to 1.0.
> https://hg.mozilla.org/mozilla-central/file/01c54613bf73/gfx/skia/skia/src/
> ports/SkTypeface_win_dw.cpp#l289
> is just copying DWrite EnhancedContrast to Skia constrast. It does not make
> sense if both values do not share the same meaning.

I self-solved in bug 1348584 comment #9.
You need to log in before you can comment on or make changes to this bug.