Bug 138554

Summary: Assertion in border drawing code with this testcase
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
testcase none

Description Simon Fraser (smfr) 2014-11-09 20:22:24 PST
Created attachment 241270 [details]
testcase

The attached test case, from bug 108619, asserts in border drawing code if you skip the geometry map assertion.

At:
y2 = roundToDevicePixel(y2, deviceScaleFactor);
y2 is 33554432, and comes back negative.

float foo = 33554432;
LayoutUnit bar(foo);
reproduces the issue.

At m_value = clampTo<float>(value * kFixedPointDenominator, static_cast<float>(INT_MIN), static_cast<float>(INT_MAX));

m_value becomes negative.
Comment 1 Radar WebKit Bug Importer 2014-12-19 10:53:36 PST
<rdar://problem/19310242>
Comment 2 zalan 2015-01-05 16:09:32 PST
Can't repro border drawing assert after r177845. -> bug 139888