aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
Commit message (Collapse)AuthorAge
* saturate IPoint math, handle NaN in isEmptyGravatar Mike Reed2018-02-13
| | | | | | | | | Bug: skia:7507 Change-Id: Ibdb40584effdea70e6499eab1bb64bb4b2260d06 Reviewed-on: https://skia-review.googlesource.com/106972 Commit-Queue: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* doh -- reverse check for finiteGravatar Mike Reed2018-02-13
| | | | | | | | Bug: skia: Change-Id: I7ea6e9bdf5c979dbbc61587edad5f799e9626639 Reviewed-on: https://skia-review.googlesource.com/106967 Reviewed-by: Stan Iliev <stani@google.com> Commit-Queue: Mike Reed <reed@google.com>
* begin to wrap all float dividesGravatar Mike Reed2018-02-12
| | | | | | | | Bug: skia:7607 skia:6134 Change-Id: Id126e92816bef1df1372bd531238cda9f3b36fab Reviewed-on: https://skia-review.googlesource.com/106261 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* check for failed snapshotGravatar Mike Reed2018-02-07
| | | | | | | | Bug: skia:7596 Change-Id: I4846cb0874c075244e5f53da8fc3210362172940 Reviewed-on: https://skia-review.googlesource.com/105361 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "move GrColor.h to private, IWYU""Gravatar Mike Reed2018-02-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 63cc29304a65039feaf27842d587ed16de010b0d. Reason for revert: pdfium updated Original change's description: > Revert "move GrColor.h to private, IWYU" > > This reverts commit e602f395813aab8242afad356008b8e79911adbb. > > Reason for revert: Breaks PDFIUM > > Original change's description: > > move GrColor.h to private, IWYU > > > > Bug: skia: > > Change-Id: I0f0dabd7cc54cb7786f53bd6da0c0c012375037e > > Reviewed-on: https://skia-review.googlesource.com/104160 > > Commit-Queue: Mike Reed <reed@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,reed@google.com > > Change-Id: Ifaa50f8771fa1ca8bc152270efdb1fe27f7210f2 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/104440 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,reed@google.com Change-Id: I22fa5c0e0628b5c1f3b5f13879c7d1a4528cc93a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/104561 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "move GrColor.h to private, IWYU"Gravatar Brian Salomon2018-02-06
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e602f395813aab8242afad356008b8e79911adbb. Reason for revert: Breaks PDFIUM Original change's description: > move GrColor.h to private, IWYU > > Bug: skia: > Change-Id: I0f0dabd7cc54cb7786f53bd6da0c0c012375037e > Reviewed-on: https://skia-review.googlesource.com/104160 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,reed@google.com Change-Id: Ifaa50f8771fa1ca8bc152270efdb1fe27f7210f2 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/104440 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* move GrColor.h to private, IWYUGravatar Mike Reed2018-02-06
| | | | | | | | Bug: skia: Change-Id: I0f0dabd7cc54cb7786f53bd6da0c0c012375037e Reviewed-on: https://skia-review.googlesource.com/104160 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Disable texture strip atlasing for DDLGravatar Robert Phillips2018-02-02
| | | | | | | | | | | | | Ultimately we will want to perform inline and ASAP uploads for the texture strip atlas. Unfortunately, that functionality relies on the existance of the flushState (which we don't have for the opList-based DDL implementation). For now we will punt and try storing the individual texture strips in their own image-based texture proxy for DDLs. Change-Id: Ic2ee0deb230172bda4a5d4b69cc802dbe84ad7ac Reviewed-on: https://skia-review.googlesource.com/102464 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* updated .fp file headersGravatar Ethan Nicholas2018-02-01
| | | | | | | | Bug: skia: Change-Id: I9c39622f34e803a706acd04372be569667380661 Reviewed-on: https://skia-review.googlesource.com/102204 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* add gpu impl for shadermaskfilterGravatar Mike Reed2018-02-01
| | | | | | | | | | | adds MulChildAlphaByInput renames MulOutputByInputAlpha --> MulChildByInputAlpha Bug: skia:7500 Change-Id: Ic0615d4d23a887fbee510901ed77a36f98a1b11d Reviewed-on: https://skia-review.googlesource.com/102440 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Reed <reed@google.com>
* saturate some irect ops for fuzzersGravatar Mike Reed2018-01-30
| | | | | | | | Bug: skia: Change-Id: I1c4f879a455048652abb619814841cd687a0474a Reviewed-on: https://skia-review.googlesource.com/101881 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Reed <reed@google.com>
* handle conics in 1D patheffectGravatar Mike Reed2018-01-29
| | | | | | | | Bug: skia::7507 Change-Id: Iab68d17c0950ffa2e5d5c20754b3f524f4b75a71 Reviewed-on: https://skia-review.googlesource.com/101442 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "hide picture virtuals (no public callers)"Gravatar Mike Klein2018-01-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8005bff7e631a269f0dfaae93ff9963dc0e5ff39. Reason for revert: hwui, flutter, and headless blink in G3 all still using these. Original change's description: > hide picture virtuals (no public callers) > > This prepares the way for a clean impl of a "placeholder" picture that never unrolls > > Bug: skia: > Change-Id: I3b5785c5c94432b54e9a7dc280b2a6e716592473 > Reviewed-on: https://skia-review.googlesource.com/100260 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,mtklein@google.com,reed@google.com Change-Id: I385789dd420588ea9a9390c8a44c6ecb96c7f358 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/100880 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* hide picture virtuals (no public callers)Gravatar Mike Reed2018-01-27
| | | | | | | | | | This prepares the way for a clean impl of a "placeholder" picture that never unrolls Bug: skia: Change-Id: I3b5785c5c94432b54e9a7dc280b2a6e716592473 Reviewed-on: https://skia-review.googlesource.com/100260 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* move checkLE functionality directly onto readbufferGravatar Mike Reed2018-01-26
| | | | | | | | Bug: skia: Change-Id: I549717f04e2e4cafc41ccbe13009805f47943d5d Reviewed-on: https://skia-review.googlesource.com/99703 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* remove SkColorSpace_BaseGravatar Mike Klein2018-01-26
| | | | | | | | | | | | The type SkColorSpace_Base doesn't need to exist. Its one type() query can be answered instead by toXYZD50(). Now all that's left in the file is SkGammas, so rename it to SkGammas.h. Change-Id: Id60ddbfb342accfd5674ae89b37a24a6583ef7b8 Reviewed-on: https://skia-review.googlesource.com/99702 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Remove legacy mask blur code.Gravatar Herbert Derby2018-01-26
| | | | | | | | | | | | | This was flag flipped about last year in the chrome code, and flag flipped about three weeks ago in Android. All the *_LEGACY_*BLUR flags are gone. Change-Id: I046f3a040ccbf12ff3a810c41b02131095df3368 Reviewed-on: https://skia-review.googlesource.com/96001 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Herb Derby <herb@google.com>
* Misc guarding of enums in ImageFilter CreateProcsGravatar Robert Phillips2018-01-24
| | | | | | | Change-Id: I51886aaf2a4670f46ca489b2369dc00e60403c75 Reviewed-on: https://skia-review.googlesource.com/99328 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Check enum values in SkDisplacementMapEffect's CreateProcGravatar Robert Phillips2018-01-24
| | | | | | | | Bug: skia:5635 Change-Id: Iaa01d2207916d0e2a2e2623f124b2b4023b51b1b Reviewed-on: https://skia-review.googlesource.com/99204 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Add check for bad enum in SkMatrixConvolutionImageFilter's CreateProcGravatar Robert Phillips2018-01-24
| | | | | | | | Bug: chromium:794402,chromium:799775 Change-Id: Ifbc9714b0095c8f4ca44d444bc48514dc90d7f4d Reviewed-on: https://skia-review.googlesource.com/99203 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Remove superfluous SkReadBuffer validity checksGravatar Robert Phillips2018-01-23
| | | | | | | | | The pattern is to create the spurious object & delete it later Change-Id: I435e2872127e02c241b5dd27cd965f3c7047a77a Reviewed-on: https://skia-review.googlesource.com/98783 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* move the guts of SkMaskFilter.h into SkMaskFilterBase.hGravatar Mike Reed2018-01-23
| | | | | | | | | Bug: skia: Change-Id: I29ad0960156562867429542d3cfbf3d639529cab Reviewed-on: https://skia-review.googlesource.com/98802 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix skia image filter fuzz SkLightingImageFilter complaintGravatar Robert Phillips2018-01-23
| | | | | | | Change-Id: I3bd9831b0160e797481469ae93b6d037d81b07da Reviewed-on: https://skia-review.googlesource.com/98780 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* move zero-init to sk_malloc for masksGravatar Mike Reed2018-01-22
| | | | | | | | Bug: skia: Change-Id: I75d557068bdcd9e9f7e380e4fa447f9d83dd1554 Reviewed-on: https://skia-review.googlesource.com/98200 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unused SkRasterizerGravatar Mike Reed2018-01-21
| | | | | | | | Bug: skia:7500 Change-Id: Iaa683cf8f0b18887cce4ec676631d1e1efee1712 Reviewed-on: https://skia-review.googlesource.com/97400 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "use GrFPArgs for maskfilters""Gravatar Mike Reed2018-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4f7f197c09443232f02cd81f3ac7fb5a216acd05. Reason for revert: not needed for roll Original change's description: > Revert "use GrFPArgs for maskfilters" > > This reverts commit a99b39399522658d7e5ddee97d0e45aa9fceaf89. > > Reason for revert: try to unblock android roller > > Original change's description: > > use GrFPArgs for maskfilters > > > > Bug: skia: > > Change-Id: I8516a3b0f6d8301c51f0861c65b9fe8f692fc5e5 > > Reviewed-on: https://skia-review.googlesource.com/97260 > > Commit-Queue: Mike Reed <reed@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com,reed@google.com > > Change-Id: Iefe8ed19bba75df86173dec53f5ed4f1ea8724d0 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/97581 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=egdaniel@google.com,bsalomon@google.com,reed@google.com Change-Id: I82c0e3234ff1b23c6d08259aae7dcb03087a415e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/97583 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "use GrFPArgs for maskfilters"Gravatar Mike Reed2018-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a99b39399522658d7e5ddee97d0e45aa9fceaf89. Reason for revert: try to unblock android roller Original change's description: > use GrFPArgs for maskfilters > > Bug: skia: > Change-Id: I8516a3b0f6d8301c51f0861c65b9fe8f692fc5e5 > Reviewed-on: https://skia-review.googlesource.com/97260 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=egdaniel@google.com,bsalomon@google.com,reed@google.com Change-Id: Iefe8ed19bba75df86173dec53f5ed4f1ea8724d0 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/97581 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* use GrFPArgs for maskfiltersGravatar Mike Reed2018-01-19
| | | | | | | | Bug: skia: Change-Id: I8516a3b0f6d8301c51f0861c65b9fe8f692fc5e5 Reviewed-on: https://skia-review.googlesource.com/97260 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* remove code from old picture serial guardGravatar Mike Reed2018-01-19
| | | | | | | | Bug: skia: Change-Id: If50a76c7f570d6e88f6583d381d0354568398039 Reviewed-on: https://skia-review.googlesource.com/97060 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* add shadermaskfilterGravatar Mike Reed2018-01-18
| | | | | | | | | | | | | | next steps: - gpu impl (will look a lot like shader's asFragProcessor - special-case rect-input (?) - explore stages w/ mtklein Bug: skia:7500 Change-Id: I71089e421d32443a3ddded6967b3e5bc67ed43f2 Reviewed-on: https://skia-review.googlesource.com/95104 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix FPsGravatar Robert Phillips2018-01-16
| | | | | | | | | The generated FPs have been broken for a while Change-Id: I32bcb3f8c5510049f65a44e226fa78149e01587f Reviewed-on: https://skia-review.googlesource.com/94901 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Funnel most proxy creation through GrProxyProviderGravatar Robert Phillips2018-01-16
| | | | | | | | | This is to provide a choke point for DDL to create Lazy Proxies. Change-Id: If178da13bc6447b31b7601810236d34502d9efbd Reviewed-on: https://skia-review.googlesource.com/93303 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* check for bad buffers in Unpack8Gravatar Mike Reed2018-01-09
| | | | | | | | Bug:799918 Change-Id: I0502a487d67ce757bf818823cf0ad46b7703294c Reviewed-on: https://skia-review.googlesource.com/92841 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Add GrProxyProviderGravatar Robert Phillips2018-01-08
| | | | | | | | | This pulls all the proxy tracking & creation functionality out of the GrResourceCache and GrResourceProvider and consolidates it in the GrProxyProvider. Change-Id: I7256f7c544319a70c1bd93dd5a9ccbe5fa0a544f Reviewed-on: https://skia-review.googlesource.com/91501 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Don't apply blur to zero-sized circlesGravatar Jim Van Verth2018-01-05
| | | | | | | | Bug: skia:7452 Change-Id: I7aac621cba8519174d306d9d304aa72a07947f46 Reviewed-on: https://skia-review.googlesource.com/91444 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Revert "Revert "remove legacy support for old old picture versions""Gravatar Mike Reed2018-01-03
| | | | | | | | | | | | This reverts commit 6f1151140f331c78d99ede3cac10462dc8b32cde. Chrome has been updated, so this should be able to land. Bug: skia: Change-Id: I5a66782a39fecfac00edeb66fbd03dae4df1712c Reviewed-on: https://skia-review.googlesource.com/90205 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unneeded readbuffer flagsGravatar Mike Reed2018-01-03
| | | | | | | | | | | - buffers are always 'cross-process' - readbuffer is always validating Bug:796107 Change-Id: I59614e9c29490c0b029c60d2aafe2806671bc9e1 Reviewed-on: https://skia-review.googlesource.com/90560 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unused declarationsGravatar Mike Reed2018-01-03
| | | | | | | | Bug: skia: Change-Id: If8ca5e3d649dab3cf8b2bdb1cf072ff23cea9465 Reviewed-on: https://skia-review.googlesource.com/90026 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "remove legacy support for old old picture versions"Gravatar Mike Reed2017-12-29
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f3504d430cec35330017aa2af3a51083801c7dd9. Reason for revert: breaks unittest in Printing unittest in chrome Original change's description: > remove legacy support for old old picture versions > > Bug: skia: > Change-Id: Ieb97eabdb18e8c7bfa86e6a1fc6e0389cd096daa > Reviewed-on: https://skia-review.googlesource.com/89860 > Reviewed-by: Florin Malita <fmalita@chromium.org> > Commit-Queue: Mike Reed <reed@google.com> TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com Change-Id: I9f90da5dcfb9543f2f575fa7dc3b9c82996b041d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/90020 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove legacy support for old old picture versionsGravatar Mike Reed2017-12-29
| | | | | | | | Bug: skia: Change-Id: Ieb97eabdb18e8c7bfa86e6a1fc6e0389cd096daa Reviewed-on: https://skia-review.googlesource.com/89860 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* removed extraneous unused uniform handles for SkSL samplersGravatar Ethan Nicholas2017-12-20
| | | | | | | | Bug: skia: Change-Id: I11fc3c0d5304b9b308ee5f3a6f8023542ebfd133 Reviewed-on: https://skia-review.googlesource.com/87790 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* converted GrRRectBlurEffect to SkSLGravatar Ethan Nicholas2017-12-20
| | | | | | | | Bug: skia: Change-Id: Ifd192db07e02d69d445277a361760ce4a452f603 Reviewed-on: https://skia-review.googlesource.com/87441 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* remove append_from_srgb()Gravatar Mike Klein2017-12-18
| | | | | | | | | | | It's now no different than append(from_srgb). Bug: skia:7419 Change-Id: I97c59b6987f033ec2f1859db40ca3056b87b370a Reviewed-on: https://skia-review.googlesource.com/86741 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Rework out-of-gamut handling in SkRasterPipelineGravatar Mike Klein2017-12-18
| | | | | | | | | | | | | | | | | | | | | | Instead of trying to carefully manage the in-gamut / out-of-gamut state of the pipeline, let's do what a GPU would do, clamping to representable range in any float -> integer conversion. Most effects doing table lookups now clamp themselves internally, and the store_foo() methods clamp when the destination is fixed point. In turn the from_srgb() conversions and all future transfer function stages can care less about this stuff. If I'm thinking right, the _lowp side of things need not change at all, and that will soften the performance impact of this change. Anything that was fast to begin with was probably running a _lowp pipeline. Bug: skia:7419 Change-Id: Id2e080ac240a97b900a1ac131c85d9e15f70af32 Reviewed-on: https://skia-review.googlesource.com/85740 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* Don't pass a stack address as a pipeline context pointer.Gravatar Mike Klein2017-12-14
| | | | | | | | | | | | | | | | | | | | | We call isNumericalTransferFn() both to test if an SkColorSpace is a 7-parameter numerical transfer function, and to get those parameters if so. They're passed to the stage functions that apply that transfer function via a context pointer. We can't use &srcFn as this pointer, as it's on the stack, and won't be alive by the time we get around to running the pipeline. Instead, copy it to the SkArenaAlloc we thread through just for this purpose. This would be a beginner's mistake, except that I wrote the API myself... Bug: chromium:794406 Change-Id: I9f9581f07a14ab501762f050e2c26f2e55a0c253 Reviewed-on: https://skia-review.googlesource.com/85340 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* converted GrMagnifierEffect to SkSLGravatar Ethan Nicholas2017-12-13
| | | | | | | | Bug: skia: Change-Id: I6dc14ac66d5b911117e71fa23fef49a897082781 Reviewed-on: https://skia-review.googlesource.com/71342 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Prefer fullscreen clears on Qualcomm/GLGravatar Chris Dalton2017-12-12
| | | | | | | | | | | | | | | | | Adds Qualcomm to the set of GL devices on which we prefer fullscreen clears. Renames fullscreenClearIsFree in GrCaps to preferFullscreenClears. Replaces 'bool canIgnoreClip' on GrRenderTargetContext::clear with an enum. Bug: skia: Change-Id: I5b30298c4d0b092c398b9fea6060f3e2bea91e46 Reviewed-on: https://skia-review.googlesource.com/83060 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Only look at gamut_transform if we wrote to it.Gravatar Mike Klein2017-12-04
| | | | | | | | | | | | | If we're already in sRGB gamut, we will not write to the 3x4 matrix, but we still analyze it to see if we need clamping. So we might (harmlessly) re-clamp some already clamped colors unnecessarily. Found by this Chromium MSAN bot. Bug: chromium:789767 Change-Id: I5d76e59b541a03ee8efbd4352262b4f650e1ec01 Reviewed-on: https://skia-review.googlesource.com/79762 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Handle null colorspace in SkToSRGBColorFilter.Gravatar Mike Klein2017-11-27
| | | | | | | | | | | | | | | | | This was uncovered by the linked fuzzer issue. I haven't looked hard at it, but I'd guess it's fuzzed an ICC profile into one that can't be deserialized, and we get a null in CreateProc(). We could probably restrict the null check to just CreateProc(), but putting it in Make() and asserting in the constructor feels cozy. BUG=chromium:787718 Change-Id: Ic4b1dad28c00ee5870f22093eedbf34686c32120 Reviewed-on: https://skia-review.googlesource.com/76080 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* converted ConstColorProcessor to SkSLGravatar Ethan Nicholas2017-11-20
| | | | | | | | Bug: skia: Change-Id: Ic3b18f82c1ab940637fb26dec1cf376dd859b35d Reviewed-on: https://skia-review.googlesource.com/73720 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>