Fix assert in text clipping.
The original code was truncating to int rather than taking the floor. This would give us the wrong integer value for negative numbers. Bug: skia:7225 Change-Id: Ief6a01358d936dd3b3e1d36af569274995c2586e Reviewed-on: https://skia-review.googlesource.com/64064 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
This commit is contained in:
parent
25019175eb
commit
1a8f234f61
@ -84,10 +84,10 @@ static void clip_quads(const SkIRect& clipRect,
|
||||
SkPoint* blobPositionRB = reinterpret_cast<SkPoint*>(blobVertices + 3*vertexStride);
|
||||
|
||||
// positions for bitmap glyphs are pixel boundary aligned
|
||||
SkIRect positionRect = SkIRect::MakeLTRB(blobPositionLT->fX,
|
||||
blobPositionLT->fY,
|
||||
blobPositionRB->fX,
|
||||
blobPositionRB->fY);
|
||||
SkIRect positionRect = SkIRect::MakeLTRB(SkScalarFloorToInt(blobPositionLT->fX),
|
||||
SkScalarFloorToInt(blobPositionLT->fY),
|
||||
SkScalarFloorToInt(blobPositionRB->fX),
|
||||
SkScalarFloorToInt(blobPositionRB->fY));
|
||||
if (clipRect.contains(positionRect)) {
|
||||
memcpy(currVertex, blobVertices, 4 * vertexStride);
|
||||
currVertex += 4 * vertexStride;
|
||||
|
Loading…
Reference in New Issue
Block a user