Commit Graph

27551 Commits

Author SHA1 Message Date
Robert Phillips
bf25d433f4 Make GrCopySurfaceOp friendlier to GrSurfaceProxy (take 2)
Reland of: https://skia-review.googlesource.com/c/11325/ (Make GrCopySurfaceOp friendlier to GrSurfaceProxy)

Change-Id: Ibe7312cebe7793af5803353a1499fbe7874c558f
Reviewed-on: https://skia-review.googlesource.com/11780
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-07 15:33:58 +00:00
Leon Scroggins III
2d61e71700 Simplify subset computation in SkGifImageReader
If xOffset or yOffset was not zero, these computations would not
be evaluated anyway, so no need to add zero for these comparisons.

(Split off from CL 9810)

Change-Id: I8481eb257d96766696945cef4eafaff4281fb7d9
Reviewed-on: https://skia-review.googlesource.com/11782
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-04-07 15:04:33 +00:00
Mike Klein
28f5b779a3 stop disabling threadsafe statics
Chrome's got threadsafe statics, Android too, Flutter too, and heck, we even have them on all our Windows builds.  No one responded to my mail about them.  Let's stop turning them off on not-Windows!

Change-Id: Iadf00336aa73df3f694ac019c9d54a3f2257a3bd
Reviewed-on: https://skia-review.googlesource.com/11683
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-07 14:54:29 +00:00
Eric Boren
10ad80b543 Fix missing valgrind.supp in recipe-bundled tasks
Bug: skia:5813
Change-Id: I734c716d953091e84d30ad36c55a6c74727f376c
Reviewed-on: https://skia-review.googlesource.com/11781
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-07 14:52:24 +00:00
Kevin Lubick
cb6f3980a5 Add ChromeOS Test/Perf jobs and recipe changes
Minor cleanup of left over Tab3 tests.

Bug: skia:6442
Change-Id: I03bb4a034101a2773619abd2be7a300a70f6ac3d
Reviewed-on: https://skia-review.googlesource.com/11414
Reviewed-by: Eric Boren <borenet@google.com>
2017-04-07 14:41:07 +00:00
Hal Canary
3390cdfef8 SkTypeface_win_dw: populate_glyph_to_unicode uses lowest unichar
BUG=chromium:538133
BUG=chromium:359065
Change-Id: I8208efc63579e0f1ebb77680beae2cd08cdba547
Reviewed-on: https://skia-review.googlesource.com/11681
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-04-07 14:12:36 +00:00
Mike Klein
ca878ccfb5 simplify SkRRect serialization
I think this happens to fix the particular issue in the attached bug.
memcpy() is kind of the swiss army knife as far as strict aliasing is
concerned... you're always allowed to use it.

The generated code for writeToMemory() is unchanged, and
readFromMemory() gets a bit better looking.

BUG=skia:5105

Change-Id: Ib5bf96600f1138650c004ced2d696e9a4ba83ca7
Reviewed-on: https://skia-review.googlesource.com/11682
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-07 13:36:54 +00:00
Mike Klein
3a1ad6fde2 Try disabling MSAN workarounds in SkJpegCodec
I don't think we've tried this since switching to GN,
where we decided to just go with jsimd_none.c on all x86 bots.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN

BUG=skia:4550

Change-Id: Iff4be3b640fb77d1094565a5db4d32778e7f2b4f
Reviewed-on: https://skia-review.googlesource.com/11680
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-07 13:33:14 +00:00
Eric Boren
23a6ec6eb3 Reland: Use bundled recipes for all test/perf tasks
It won't save as much time for faster machines, but it should still
shave a few seconds, and it'll be nice to be consistent.

Bug: skia:
Change-Id: I0b2aa010579b527c66325cb5b691bfb549b31316
Reviewed-on: https://skia-review.googlesource.com/11418
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-07 13:26:10 +00:00
Mike Klein
5f055f0fe9 jumper, gather_f16
Here we use 64-bit gather instructions for HSW,
which I think we haven't done before.

Change-Id: I7b22b3cc0b7a151952518bb9afb90624ebdb4a22
Reviewed-on: https://skia-review.googlesource.com/11602
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-07 01:01:50 +00:00
Mike Klein
7d3d872331 jumper, gather_i8
Change-Id: Iefa8044bac0555c5fff370217a6270b4f3c64300
Reviewed-on: https://skia-review.googlesource.com/11582
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 23:06:04 +00:00
Robert Phillips
b9a02a131e Update stencil ops to have a parallel proxyID
Change-Id: I842c7f2011c8b9d4487cec4349de8b77f326a381
Reviewed-on: https://skia-review.googlesource.com/11360
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-04-06 21:59:04 +00:00
Mike Klein
21bd3e4b11 jumper, more gathers
This is all the gathers except index 8 and f16, which aren't conceptually hard
but I want to land separately.

Change-Id: I525f2496e55451041bd6ea07985858fda7b56a40
Reviewed-on: https://skia-review.googlesource.com/11524
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 21:44:24 +00:00
Robert Phillips
9a121cc6ad Revert "Make GrCopySurfaceOp friendlier to GrSurfaceProxy"
This reverts commit d7cda9a6f0.

Reason for revert: Tegra3!!!!

Original change's description:
> Make GrCopySurfaceOp friendlier to GrSurfaceProxy
> 
> Change-Id: Iba8c068bd96ab154d466e485a9db31dd552138de
> Reviewed-on: https://skia-review.googlesource.com/11325
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Idc31d469d94e6e2772ee5714987b3a05bb902d88
Reviewed-on: https://skia-review.googlesource.com/11580
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-06 21:17:26 +00:00
Hans Wennborg
7754ccce72 Specialize boxBlur(Interp) based on 'transpose' parameter
boxBlurInterp showed up hot when running Speedometer. I noticed that
BoxBlur calls boxBlurInterp repeatedly, the call does not get inlined,
and the function could be simplified a bit if 'transpose' is a
compile-time constant.

In particular, dst_x_stride or dst_y_stride now become a constant 1,
which simplifies the dptr updates.

Bug: skia:none
Change-Id: I8782e5b133a2195328e13878aca8a749af150b86
Reviewed-on: https://skia-review.googlesource.com/11362
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 21:11:05 +00:00
Matt Sarett
46a45ba907 Revert "Manual revert: Add support for writing ICC profiles to webp encoder"
This reverts commit 4293a1e5f2.

Reason for revert: Relanding, libwebp updated in Android master

Original change's description:
> Manual revert: Add support for writing ICC profiles to webp encoder
> 
> Bug: skia:
> Change-Id: I4e70bee8c2ea8dbd5ae1e84aa097f5a7e2e62721
> Reviewed-on: https://skia-review.googlesource.com/11444
> Reviewed-by: Matt Sarett <msarett@google.com>
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
> 

TBR=msarett@google.com,scroggo@google.com,reviews@skia.org,jzern@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I73aa9e8183241ada4ec6451567bce3d3d18995cc
Reviewed-on: https://skia-review.googlesource.com/11523
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-04-06 20:34:45 +00:00
Mike Klein
dec4ea81ce jumper, gather_8888
Change-Id: I70bd64d114a2460534bcb51d356e13d9bc3b8603
Reviewed-on: https://skia-review.googlesource.com/11491
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 20:22:41 +00:00
Robert Phillips
d7cda9a6f0 Make GrCopySurfaceOp friendlier to GrSurfaceProxy
Change-Id: Iba8c068bd96ab154d466e485a9db31dd552138de
Reviewed-on: https://skia-review.googlesource.com/11325
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-04-06 20:03:40 +00:00
Mike Klein
cf1b022c53 tweaks to make gather_* easier in SkJumper
This moves all the values that gather_8888, gather_a8, etc. need to
the front of SkImageShaderContext, and dereferences the color table.

This should be a no-op, but will make these stages easier to write
in SkJumper.

Change-Id: I0dff97d5113d14e941e7b717cd85f0036764eb88
Reviewed-on: https://skia-review.googlesource.com/11492
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 20:00:37 +00:00
Mike Klein
3b80558bd2 jumper, turn off a few fancy features
This doesn't change any of the generated .S files, but it does cut a few
misc. sections from the intermediate .o files.  It's nice to get those
sections out of the way, and one day we might be able to find ways to
cut everything but .text... that'd allow us to switch the supicious
section sniffing code from a blacklist (no .const, no .literal, etc.) to
a more foolproof whitelist (.text or bust).

The remaining sections are only in ELF objects (aarch64.o, vfp4.o):
   .comment         (notes the version of Clang/LLVM that compiled it)
   .note.GNU-stack  (we manually add this back in build_stages.py)
and vfp4.o has two more sections that I don't understand yet:
   .ARM.exidx       (I'd have thought -fno-unwind-tables would cut this)
   .ARM.attributes

While doing this, I've tried to make the ARM flags a bit more compact.

Change-Id: I30ef6acb2a917ec938c5358c3f970fe04b6d7afa
Reviewed-on: https://skia-review.googlesource.com/11485
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 19:33:16 +00:00
Mike Reed
42ce38f866 make copyTo_with_allocator android only
Bug: skia:6464

Change-Id: I3d95daae2ae854671e6231e62f200913ce3586d0
Reviewed-on: https://skia-review.googlesource.com/11486
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-04-06 18:37:51 +00:00
Eric Boren
2e2b27fcc1 Commit the patch before bundling recipes
This was part of https://skia-review.googlesource.com/c/11340/ but split
out before relanding.

Bug: skia:5813
Change-Id: I5cc97a588300a8656989a8d73e1231bdd606ef39
Reviewed-on: https://skia-review.googlesource.com/11483
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 18:21:11 +00:00
Brian Osman
60cd57ed9f Factor out common work in readSurfacePixels and writeSurfacePixels
Use more consistent structure between the two functions.

BUG=skia:5853

Change-Id: I82465bee30025574d0d6fad9e287b187d75fff8d
Reviewed-on: https://skia-review.googlesource.com/10042
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 18:17:24 +00:00
Mike Reed
6ff6af90e0 handle odd-index-count in encode/decode
Bug: skia:
Change-Id: Iffb123001a77049c6581f63bbc69c62f241a87f8
Reviewed-on: https://skia-review.googlesource.com/11405
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 18:13:19 +00:00
Cary Clark
372bc4e43e fix 36605271
typo in function header makes it appear
that a buffer overflow may occur

R=djsollen@google.com

Bug: b/36605271
Change-Id: Iab6d08ae71f49c46736dc025791faefdeb74df5e
Reviewed-on: https://skia-review.googlesource.com/11454
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 18:12:19 +00:00
Eric Boren
085bf7cce6 Revert "Remove CPU dimension for Win GCE bots"
This reverts commit 25bf350d10.

Reason for revert: Speculatively reverting to see if this unsticks try jobs.

Original change's description:
> Remove CPU dimension for Win GCE bots
> 
> This is mainly to collapse the two groups on the capacity stats page.
> 
> Bug: skia:
> Change-Id: Icc125f6fa773ebf11909b0606bc7958146da5983
> Reviewed-on: https://skia-review.googlesource.com/11417
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>
> 

TBR=borenet@google.com,kjlubick@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I52f01f6a915fa0ac4446bd492b9e455a07841ee9
Reviewed-on: https://skia-review.googlesource.com/11484
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 17:32:56 +00:00
Mike Klein
14987ebb97 jumper, add load_f32()
Change-Id: I71d85ffe29bc11678ff1e696fa4a2c93d0b4fcbe
Reviewed-on: https://skia-review.googlesource.com/11446
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 16:14:09 +00:00
Mike Klein
8a823faeba jumper, kill off F4
Its alignment (sometimes 4, sometimes 16) has proven to be error-prone.

This also means we don't really need LazyCtx::load().

I think I only had it there to make sure we were doing unaligned loads
of F4; the better way is to just never declare the data as aligned...

The generated code isn't quite as good, but I can live with it.

Change-Id: I5d57a580ca12c94ca84a5e8b72a66cf8d0c829eb
Reviewed-on: https://skia-review.googlesource.com/11406
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 15:43:51 +00:00
Mike Klein
de2e384660 jumper, only print non-zero counts
This makes it easier for me to read.

Change-Id: I6936c31981a2af6b7d3d7db9e60d36010fefa7ec
Reviewed-on: https://skia-review.googlesource.com/11445
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-06 15:17:13 +00:00
Matt Sarett
4293a1e5f2 Manual revert: Add support for writing ICC profiles to webp encoder
Bug: skia:
Change-Id: I4e70bee8c2ea8dbd5ae1e84aa097f5a7e2e62721
Reviewed-on: https://skia-review.googlesource.com/11444
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-04-06 14:43:11 +00:00
Eric Boren
e2a3f5fdb8 Add Windows tester to the CQ
This will likely be followed up by an increase in number
of Win VMs.

Bug: skia:6462
Change-Id: If22d934c43c57d4ad3a20730e91caed0d4848cd4
Reviewed-on: https://skia-review.googlesource.com/11440
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 14:21:44 +00:00
Eric Boren
25bf350d10 Remove CPU dimension for Win GCE bots
This is mainly to collapse the two groups on the capacity stats page.

Bug: skia:
Change-Id: Icc125f6fa773ebf11909b0606bc7958146da5983
Reviewed-on: https://skia-review.googlesource.com/11417
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 14:12:45 +00:00
Brian Osman
bf826af16f Do nondeterministic FP testing on iOS
Bug: skia:6395
Change-Id: Icc2ba15c6152b8e68bbad656c3ebadb12b56d55e
Reviewed-on: https://skia-review.googlesource.com/11403
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-04-06 13:44:32 +00:00
Ben Wagner
7da7fe687b Revert "SpecialImageTest no longer fails on GalaxyS6."
This reverts commit 093cb35807.

Reason for revert: Not sure why, but it's failing again today.

Original change's description:
> SpecialImageTest no longer fails on GalaxyS6.
> 
> BUG=skia:6338
> NOTRY=true
> 
> Change-Id: Ie7305f654e9f818dc31cb49eba2e7bf4000a36f9
> Reviewed-on: https://skia-review.googlesource.com/11411
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
> 

TBR=benjaminwagner@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6338

Change-Id: I1e07c74d37682df42023e3b52924f9a29da2cccb
Reviewed-on: https://skia-review.googlesource.com/11441
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-04-06 13:44:22 +00:00
Mike Reed
9d9172fe2c remove legacy vertices flag and code
Bug: skia:6366
Change-Id: Ibea5f71c5ff570e4f3ccec7d064893602c3335cf
Reviewed-on: https://skia-review.googlesource.com/11359
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-06 12:58:46 +00:00
Mike Reed
dc57b5d496 remove SK_SUPPORT_LEGACY_BITMAP_SETPIXELREF flag and code
Bug: skia:
Change-Id: I234d221d685a6feab891cbca84869177b4a954bb
Reviewed-on: https://skia-review.googlesource.com/11404
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-06 12:58:26 +00:00
Eric Boren
6276a7c999 Revert "Use bundled recipes on all Test/Perf tasks"
This reverts commit 43b9c6bbf6.

Reason for revert: Windows failing

Original change's description:
> Use bundled recipes on all Test/Perf tasks
> 
> It won't save as much time for faster machines, but it should still
> shave a few seconds, and it'll be nice to be consistent.
> 
> Bug: skia:5813
> Change-Id: I5724e7aae83851edff3129265a9ffee5c3f95825
> Reviewed-on: https://skia-review.googlesource.com/11340
> Commit-Queue: Eric Boren <borenet@google.com>
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> 

TBR=borenet@google.com,kjlubick@google.com,reviews@skia.org,iannucci@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I2a9cc1c12079755969879e37da5cae9f93921ddd
Reviewed-on: https://skia-review.googlesource.com/11416
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-04-06 12:53:42 +00:00
Mike Reed
93b1b4feda add guard for obsolete (non-functioning) replayClips
replayClips has been disabled (broken) for a while.
This CL just attempts to hide the api (will remove
once android's callsite is removed)

Bug: skia:
Change-Id: I35b412addfc0a08ea888a62609888b9b54dce2a6
Reviewed-on: https://skia-review.googlesource.com/11401
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-06 12:53:21 +00:00
Robert Phillips
e78b7259c3 Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 3)
This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.

This is a re-reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv)

Change-Id: Icfb9dd223418dd460405efd2bfd9d1c356beed1a
Reviewed-on: https://skia-review.googlesource.com/11412
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-06 12:45:02 +00:00
Eric Boren
43b9c6bbf6 Use bundled recipes on all Test/Perf tasks
It won't save as much time for faster machines, but it should still
shave a few seconds, and it'll be nice to be consistent.

Bug: skia:5813
Change-Id: I5724e7aae83851edff3129265a9ffee5c3f95825
Reviewed-on: https://skia-review.googlesource.com/11340
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2017-04-06 12:34:31 +00:00
Ben Wagner
093cb35807 SpecialImageTest no longer fails on GalaxyS6.
BUG=skia:6338
NOTRY=true

Change-Id: Ie7305f654e9f818dc31cb49eba2e7bf4000a36f9
Reviewed-on: https://skia-review.googlesource.com/11411
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-04-06 12:30:30 +00:00
Ben Wagner
e5f6679c01 Update MotoG4 to NPJ25.93-14.
NOTRY=true
BUG=skia:6453

Change-Id: Ie8c35643c7e038f64f03d95e1f8d58ba748d4a52
Reviewed-on: https://skia-review.googlesource.com/10754
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-04-06 12:29:50 +00:00
lsalzman
c0e52f44aa Fix the size check for the drawBitmap fast-path in SkBitmapDevice::drawBitmapRect. It would fail when the source rectangle had a non-zero offset, in which case it would compare the source rectangle with the offset to the extracted bitmap size, which always fails. The only thing that should matter is that the source rectangle and extract bitmap have the same size, since the offset gets added onto the matrix.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2089583002

Review-Url: https://codereview.chromium.org/2089583002
Committed: https://skia.googlesource.com/skia/+/ea9bc0c07b5dae78a9a449d7d7a07fc79262d41a
Review-Url: https://codereview.chromium.org/2089583002
2017-04-05 21:42:54 -07:00
Mike Klein
45dcc0c42c Fix gather_uninteresting_hashes()
It can crash when the file length is an exact multiple of the page size.

When the file size is not an exact page size multiple,
SkData::MakeFromFileName() (i.e. mmap) happens to fill the rest with \0,
giving us a terminating \0 for free.  SkStrSplit() uses this to stop.

When the file size is an exact page size multiple, there's no guaranteed
\0.  We might find one on the next page immediately, eventually, or we
might just segfault.  Whoops.

To fix, copy to an SkString which ought to plop in a \0 for us.

Change-Id: I51bbfdd85dfbb1c2276249d0255cf1c410ef9999
Reviewed-on: https://skia-review.googlesource.com/11409
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-04-05 23:08:08 +00:00
Matt Sarett
7abfb5e154 SkImageEncoder: Be more lenient on inputs
(1) Some clients want us to write ICC profiles, even though they
    have not opted into linear unpremultiplication.  This CL allows
    that behavior.

(2) We should not assert that the transfer function must be linear
    or srgb.  Particularly in non-linear blending modes, skia is
    willing to support a larger set of transfer functions.

(3) We still need to require linear or srgb when in kRespect transfer
    function mode.  We have not yet implemented linear unpremultiplies
    for arbitrary transfer functions.

Bug: skia:
Change-Id: Idce9f07c3d36eca4d78ede5e2650b2cab412904c
Reviewed-on: https://skia-review.googlesource.com/11349
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2017-04-05 22:56:37 +00:00
Matt Sarett
3dbef9f184 Revert "Revert "Add support for writing ICC profiles to webp encoder""
This reverts commit e87d7781db.

Reason for revert: Not the cause of the crashes.

Original change's description:
> Revert "Add support for writing ICC profiles to webp encoder"
> 
> This reverts commit 0c9d0b4e03.
> 
> Reason for revert: Looks like it's breaking a number of bots.
> 
> Original change's description:
> > Add support for writing ICC profiles to webp encoder
> > 
> > Bug: skia:
> > Change-Id: If0a8f84ed88da96924370b841f2283c0ff8e32ab
> > Reviewed-on: https://skia-review.googlesource.com/10212
> > Commit-Queue: Matt Sarett <msarett@google.com>
> > Reviewed-by: Leon Scroggins <scroggo@google.com>
> > 
> 
> TBR=msarett@google.com,scroggo@google.com,reviews@skia.org,jzern@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: Ic06ad9f19a4d743b34f8d3bd33f171b9d74badcb
> Reviewed-on: https://skia-review.googlesource.com/11408
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> 

TBR=jvanverth@google.com,msarett@google.com,scroggo@google.com,reviews@skia.org,jzern@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I42f6ddefaf87c87b155640950b52a456952130ec
Reviewed-on: https://skia-review.googlesource.com/11410
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-04-05 22:33:28 +00:00
Matt Sarett
1a26ba9def Fix MSAN error in test
Bug: skia:
Change-Id: I27afd02b3383e259101a856630d04566fdf7a994
Reviewed-on: https://skia-review.googlesource.com/11407
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-04-05 22:08:35 +00:00
Jim Van Verth
e87d7781db Revert "Add support for writing ICC profiles to webp encoder"
This reverts commit 0c9d0b4e03.

Reason for revert: Looks like it's breaking a number of bots.

Original change's description:
> Add support for writing ICC profiles to webp encoder
> 
> Bug: skia:
> Change-Id: If0a8f84ed88da96924370b841f2283c0ff8e32ab
> Reviewed-on: https://skia-review.googlesource.com/10212
> Commit-Queue: Matt Sarett <msarett@google.com>
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> 

TBR=msarett@google.com,scroggo@google.com,reviews@skia.org,jzern@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ic06ad9f19a4d743b34f8d3bd33f171b9d74badcb
Reviewed-on: https://skia-review.googlesource.com/11408
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-04-05 21:56:14 +00:00
Mike Reed
4f783f8ada restore old api for android to unblock roll
Bug: skia:
Change-Id: Ib115666503784b928f44f04878ed06a5aa844e6e
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/11420
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-04-05 21:36:34 +00:00
Matt Sarett
0c9d0b4e03 Add support for writing ICC profiles to webp encoder
Bug: skia:
Change-Id: If0a8f84ed88da96924370b841f2283c0ff8e32ab
Reviewed-on: https://skia-review.googlesource.com/10212
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2017-04-05 21:33:14 +00:00