Commit Graph

7 Commits

Author SHA1 Message Date
Mike Reed
7b6ea19c9c detect fixed overflow in drawPoints
This particular test this is addressing is:

1. very large device (>32K in a test case)
2. drawPoints has special (fast) case where it converts all of the pts (rects) into fixed point
3. overflows fixed -- assert

Paths already don't draw into a device this large (they are limited by 32K I think, smaller if aa)
The (theoretical) solution for paths is to tile the draw itself. Perhaps that approach could be
applied everywhere in bitmapdevice...

This older issue sums up this idea: https://bugs.chromium.org/p/skia/issues/detail?id=2122
Will look into this general solution in a separate CL/effort.

Bug: skia:7425
Change-Id: I57f8da92df78127e6b8e42e422c43e50bb5748d6
Reviewed-on: https://skia-review.googlesource.com/96700
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-01-18 19:05:18 +00:00
Mike Reed
8008df1080 handle large rects, rename helper
To fix gm/bigrect, needed to do adjust "largest" rect so it doesn't become empty when round-tripping with SkRect/SkIRect.
I renamed it after this.

Bug: skia:
Change-Id: I747782c8456da603cf298275d2300ea1996e7629
Reviewed-on: https://skia-review.googlesource.com/95563
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
2018-01-17 17:38:57 +00:00
Mike Reed
f581777217 shrink our 'largest' so that its non-empty
Bug: skia:
Change-Id: Ib12fd9491069440c85d5aa9c9d6d26787f03ef0d
Reviewed-on: https://skia-review.googlesource.com/92643
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-01-09 21:57:58 +00:00
Mike Reed
a766ca9af1 use 64bit math to compute is a rect is empty
Will work next to try to make isEmpty() private

Bug: skia:7470
Bug:799715
Change-Id: I7b43028ecd86dca68e0c67225712516d2f2f88a2
Reviewed-on: https://skia-review.googlesource.com/92620
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-01-09 16:54:52 +00:00
Mike Reed
185ffe916e make growToInclude private
Bug: skia:
Change-Id: Id55344ba2f33563d22c2bf4d5829a9a31095a47d
Reviewed-on: https://skia-review.googlesource.com/92143
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-01-08 22:32:51 +00:00
Mike Reed
274218ef01 move largest apis into private
Related to https://skia-review.googlesource.com/c/skia/+/91860

Bug: skia:
Change-Id: Ia8fd981b422bbab75541b078277d2e09e1fc9d41
Reviewed-on: https://skia-review.googlesource.com/91940
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-01-08 20:42:27 +00:00
Mike Reed
9fc53624a0 check for irect with overflow width/height
Bug:798066
Change-Id: Iac324ac5a32fae241a528751c84279ce60ac4baf
Reviewed-on: https://skia-review.googlesource.com/90544
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-01-03 21:01:54 +00:00