History log of /external/skia/tests/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
258aaff33bbf402bd48f57f6e4b163a6afaa2371 21-Aug-2014 Derek Sollenberger <djsollen@google.com> enable ffp-contract on arm64 builds

bug: 17175893
Change-Id: I4c5595b8b1c43ed50d57ac24e9b33220715441be
atrixTest.cpp
4e4a89dab47d74874d6a79c4b34d89ffbfb386af 14-Aug-2014 Derek Sollenberger <djsollen@google.com> Merge changes from Skia's m37 branch into lmp-dev.

This merge includes the following CLs...
0d78ac2 Set maximum output size for scaled-image-cache images
0c1c911 Adding 64 bit checks
f2d87ba Get additional DW font metrics when available.

Bug: 17024392
Change-Id: I7956f50e5b95b1e012cf56614b12f1d834b423c1
ndroid.mk
mageCacheTest.cpp
caledImageCache.cpp
9ed58377b45739aa8f9dc1b02049ab29c137a838 25-Jul-2014 Derek Sollenberger <djsollen@google.com> Merge changes from Skia's m37 branch into lmp-dev.

This merge includes the following CLs...
20ee1ba Change SkCanvasState to use inheritance.
b572f07 DirectWrite to detect GDI only fonts
282aa1e Fix SkColorFilterImageFilter matrix optimization
e849224 Re-land "Fix external SkImageFilter caching with clips."
9b1eeeb Better rendering detection with DirectWrite.
mageFilterTest.cpp
b46762490adc32ecf6a69b009854a7dcf4d950fe 02-Jul-2014 reed <reed@google.com> return early instead of crashing if fileData fails

Allows skia_test to run without crashing.

Cherry-pick of 7a7c3163f038cf4e24334f010c5ceab540a9f4be in Skia.

BUG=skia:
R=krajcevski@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/362833004

Change-Id: I4782424482d5ffad4544501bf297e6ff2e4a1b62
txTest.cpp
fd33437fecbd8d252d53d61b98b270ade608b172 20-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Move BenchTimer to tools as Timer" into master-skia

https://skia.googlesource.com/skia/+/9ac68ee

Change-Id: I7dc24b601cc1e7bbbc1129b710adc7ff4ec2174b
ab13a9fbecb1a02a2ef660d60cf171d344321922 20-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of Move BenchTimer to tools as Timer (https://codereview.chromium.org/344213003/)" into master-skia

https://skia.googlesource.com/skia/+/9e64b78

Change-Id: I0d5ca3b3f94bb665dc9ac5eecb0b3d41a5afdf54
0ec0eac8419433256295c74dd2214502408f18a2 20-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Move BenchTimer to tools as Timer" into master-skia

https://skia.googlesource.com/skia/+/4ed7528

Change-Id: Ic2d1a8c7357bc2b693384423587f99bab72397b3
03d9deec706cd92f8f6524bdabc788a8df50ddf4 18-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Refactor how we handle resources path in Tests." into master-skia

https://skia.googlesource.com/skia/+/bcbc178

Change-Id: Idecea6249a2a1874080c9eaee9a57709fdb0fcbe
bcbc1788b478b1e54079318ad073e8490aa66fae 18-Jun-2014 tfarina <tfarina@chromium.org> Refactor how we handle resources path in Tests.

This idea emerged while doing https://codereview.chromium.org/321723002/
(commit 880914c35c8f7fc2e9c57134134c883baf66e538).

BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/346453002
ontHostTest.cpp
mageDecodingTest.cpp
txTest.cpp
est.cpp
est.h
kia_test.cpp
1dc1ba0639572b75b46770f496d18ec003d5b874 18-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add basic stacktrace handler using libunwind." into master-skia

https://skia.googlesource.com/skia/+/30e6e2a

Change-Id: I845b3fafadc2842c38996c154bf7dbe17859d809
30e6e2af14e84216b1c113fd7500d0822bc81daa 18-Jun-2014 mtklein <mtklein@chromium.org> Add basic stacktrace handler using libunwind.

This means we will all have to apt-get install libunwind8-dev on Linux. Mac comes with everything we need already.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/343583005
kia_test.cpp
61bc8fe9d400e77419f542c1dc7713f4fb19b43a 18-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Fix last pathops skp bug" into master-skia

https://skia.googlesource.com/skia/+/e4097e3

Change-Id: Id20e114a9f0daec1aa79e69f1cd52bab82c1f762
e4097e3a0b10bb0047a45b6949ca01826f0807a7 18-Jun-2014 caryclark <caryclark@google.com> Fix last pathops skp bug

This fixes the last bug discovered by iterating through the 800K
skp corpus representing the top 1M websites. For every clip on the
stack, the paths are replaced with the pathop intersection. The
resulting draw is compared with the original draw for pixel errors.

At least two prominent bugs remain. In one, the winding value is
confused by a cubic with an inflection. In the other, a quad/cubic
pair, nearly coincident, fails to find an intersection.

These minor changes include ignoring very tiny self-intersections
of cubics, and processing degenerate edges that don't connect to
anything else.

R=reed@android.com
TBR=reed

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/340103002
athOpsCubicQuadIntersectionTest.cpp
athOpsDebug.cpp
athOpsOpTest.cpp
athOpsSkpTest.cpp
athOpsTestCommon.cpp
athOpsTestCommon.h
f6f64b8c8bede41c989add536918879312eada73 17-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Fifth attempt to land faster rect blur. Remove unnecessary conditionals from the shader." into master-skia

https://skia.googlesource.com/skia/+/4a24cd8

Change-Id: Ib03ad84e8844107bd57a3aed9c28d2e997d95fc4
4a24cd8ff41a8b3d292d60e4351a631240a7ed75 17-Jun-2014 humper <humper@google.com> Fifth attempt to land faster rect blur. Remove unnecessary conditionals from the shader.

approved over in https://codereview.chromium.org/331863006/; reuploading
because it had the wrong base url

BUG=skia:2095
R=bsalomon@google.com
TBR=bsalomon

Author: humper@google.com

Review URL: https://codereview.chromium.org/341543005
lurTest.cpp
0cb12c143b442de53bd0112cf7ad6c77a18e0a80 17-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add EXPERIMENTAL_beginRecording() for SkRecord-based recording." into master-skia

https://skia.googlesource.com/skia/+/887f397

Change-Id: Icfd224e82066b1f71d77b38629ac6d60568ac63c
887f3979f0c717e69a8b7d169169bc27eb46d3b5 17-Jun-2014 mtklein <mtklein@chromium.org> Add EXPERIMENTAL_beginRecording() for SkRecord-based recording.

The interesting stuff is in SkPictureRecorder.{h,cpp}. The rest is mostly moving SkRecord from its own directories into core to avoid circular dependencies in GYP.

After plumbing SkRecord all the way through in Picture, I'll delete its old entry point include/record/SkRecording.h. For now it and record.gypi need to stay where they are to keep Chrome building.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/331573004
ecordingTest.cpp
a8dbe3f21c692b274486d03e7e44b4d19a0ea06b 17-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Silence warnings about using offsetof on near-POD structs." into master-skia

https://skia.googlesource.com/skia/+/24ad096

Change-Id: If7bd992905da096c98e415c3da88949ca4069d9d
c1f0e6b9e23616ae8b9b9f25be572c62e9dc150f 17-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "hide SkBitmap::Config entirely (behind a flag)" into master-skia

https://skia.googlesource.com/skia/+/c3b3266

Change-Id: I56288de79e4998846b939bdee9544f417a068091
c3b3266b7db2f1a41d41ecac010c766b7ad8eebc 17-Jun-2014 reed <reed@google.com> hide SkBitmap::Config entirely (behind a flag)

patch from issue 339463002

TBR=

I think the NoGPU failure is unrelated, so ignoring
NOTRY=True

Author: reed@google.com

Review URL: https://codereview.chromium.org/340533002
txTest.cpp
1dc60e75e9e7e41d4f506fe98e964b46be918532 17-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Enabling the canvas bit to turn the clip stack into a flat replace exposed around 100 failures when testing the 800K skp set generated from the top 1M web sites." into master-skia

https://skia.googlesource.com/skia/+/dac1d17

Change-Id: I7c530a09071cc8017c7ec3b24a64b3839591629f
dac1d17027dcaa5596885a9f333979418b35001c 17-Jun-2014 caryclark <caryclark@google.com> Enabling the canvas bit to turn the clip stack into a flat replace exposed around 100 failures when testing the 800K skp set generated from the top 1M web sites.

This fixes all but one of those failures.

Major changes include:
- Replace angle indices with angle pointers. This was motivated by the need to add angles later but not renumber existing angles.
- Aggressive segment chase. When the winding is known on a segment, more aggressively passing that winding to adjacent segments allows fragmented data sets to succeed.
- Line segments with ends nearly the same are treated as coincident first.
- Transfer partial coincidence by observing that if segment A is partially coincident to B and C then B and C may be partially coincident.

TBR=reed

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/272153002
athOpsAngleIdeas.cpp
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsDebug.cpp
athOpsExtendedTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
3fc0872d16a51663b3d87c0d857f51af77eb563c 14-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "stop using SkBitmap::Config" into master-skia

https://skia.googlesource.com/skia/+/0689d7b

Change-Id: I9a0b25e32ad2a3c543c3d6e8987ae83c308c6d44
0689d7b12e7c427a077b003d3d8ae759d86f798f 14-Jun-2014 reed <reed@chromium.org> stop using SkBitmap::Config

R=scroggo@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/338493005
txTest.cpp
8edb4ec8c4ce5800f81069cd32e0b8005311a6b8 13-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "hide Config in SkImageDecoder -- use SkColorType instead" into master-skia

https://skia.googlesource.com/skia/+/bfefc7c

Change-Id: Ie0b87a9db8c6c49fa2a1d0b34846adfd27a6e16c
bfefc7c95fc0e8ebd5000c68f6d16e1a3ea0e71e 13-Jun-2014 reed <reed@chromium.org> hide Config in SkImageDecoder -- use SkColorType instead

patch from issue 334613003

TBR=scroggo

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/334793002
mageDecodingTest.cpp
5be2a5f585850c1e1fc284450fb8503bcecf7da7 12-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of third try at landing improved blur rect; this time with more correctness (https://codereview.chromium.org/331443003/)" into master-skia

https://skia.googlesource.com/skia/+/e07c1ab

Change-Id: Ic6af60faa1c2946c8f488624d151c57e54d16cc3
e07c1ab40882078b505f2b0ceb7413c44af569e8 12-Jun-2014 scroggo <scroggo@google.com> Revert of third try at landing improved blur rect; this time with more correctness (https://codereview.chromium.org/331443003/)

Reason for revert:
Failing layout test: https://storage.googleapis.com/chromium-layout-test-archives/WebKit_Linux/32762/layout-test-results/virtual/gpu/fast/canvas/canvas-draw-canvas-on-canvas-shadow-pretty-diff.html

Original issue's description:
> third try at landing improved blur rect; this time with more correctness
>
> BUG=skia:2095
> R=bsalomon@google.com
> TBR=bsalomon
>
> Committed: https://skia.googlesource.com/skia/+/72abfc2b4e7caead660f6b6a05e60d05eaf1a66f

R=bsalomon@google.com, reed@google.com, humper@google.com
TBR=bsalomon@google.com, humper@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2095

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/333763002
lurTest.cpp
b6faff609c1428c3c69def9de750f6caf3273d79 12-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Cleanup: Delete sk_tools::make_filepath() in favor of SkOSPath::SkPathJoin()." into master-skia

https://skia.googlesource.com/skia/+/da4ed32

Change-Id: I6b237a1ae3e2109bcdfcec79c92bcfbf9296cabb
da4ed3289ec05a7155d5669c90a743a829574ea6 12-Jun-2014 tfarina <tfarina@chromium.org> Cleanup: Delete sk_tools::make_filepath() in favor of SkOSPath::SkPathJoin().

BUG=None
TEST=make tools tests && out/Debug/tests
R=epoger@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/327403002
ictureUtilsTest.cpp
ed8fa4e648dac7a78d649498b87d58cadef12003 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "third try at landing improved blur rect; this time with more correctness" into master-skia

https://skia.googlesource.com/skia/+/72abfc2

Change-Id: Idf2f258b43881031ecbcfe8470b34533496d9c97
72abfc2b4e7caead660f6b6a05e60d05eaf1a66f 11-Jun-2014 humper <humper@google.com> third try at landing improved blur rect; this time with more correctness

BUG=skia:2095
R=bsalomon@google.com
TBR=bsalomon

Author: humper@google.com

Review URL: https://codereview.chromium.org/331443003
lurTest.cpp
77e5291ca6903c9e9351c53d358a41ee181a12ce 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Texture compression unit tests along with a couple of bug fixes" into master-skia

https://skia.googlesource.com/skia/+/2b310e4

Change-Id: I96938abbfe517aa357439f2570081c9783e08a4e
2b310e46eb28bbbe375369e47068accbdfeff3a7 11-Jun-2014 krajcevski <krajcevski@google.com> Texture compression unit tests along with a couple of bug fixes

R=robertphillips@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/330453005
extureCompressionTest.cpp
24663a3e41c9f7860b8921c8ecd18f46e4989a58 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Remove picture pre-allocation from SkPictureRecorder" into master-skia

https://skia.googlesource.com/skia/+/0bdbea7

Change-Id: I58cae183e6538467e0251c849c74db870f88318e
0bdbea75ff1a6f3c313c18cab0139728967cb93e 11-Jun-2014 robertphillips <robertphillips@google.com> Remove picture pre-allocation from SkPictureRecorder

This CL improves the separation of the SkPicture and SkPictureRecord classes. It delays creation of the SkPicture (in SkPictureRecorder) until recording is actually completed. To accomplish this the SkRecord-derived classes now get SkPathHeap and SkPictureContentInfo members that are absorbed by the SkPicture when it is constructed.

As an ancillary change, this CL also moves the SkPictureContentInfo object from SkPicture to SkPicturePlayback. This is intended to centralize all the data in the SkPicturePlayback object.

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/324293004
anvasTest.cpp
ea5e8038f99f82ca524fcfd313c7a1b525223a9c 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Cleanup: Delete sk_tools::get_basename() in favor of SkOSPath::SkBasename()." into master-skia

https://skia.googlesource.com/skia/+/1c99ea8

Change-Id: If97c0c844f8ce56bfc4128bb197425fee38c0ae5
1c99ea8ed80ca492397717b57e2735869be38c69 11-Jun-2014 tfarina <tfarina@chromium.org> Cleanup: Delete sk_tools::get_basename() in favor of SkOSPath::SkBasename().

BUG=None
TEST=make tests && out/Debug/tests
R=epoger@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/321693002
ictureUtilsTest.cpp
c9fc171d3d6ec555faf100f51712e0819e6931be 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of second try at landing improved blur rect (https://codereview.chromium.org/325703002/)" into master-skia

https://skia.googlesource.com/skia/+/b0b1aa0

Change-Id: Ie300c501defa9870999f6ed684bb89420044a0b0
b0b1aa04ed82a7cb16c7e6a06d92a411d7bd3749 11-Jun-2014 reed <reed@google.com> Revert of second try at landing improved blur rect (https://codereview.chromium.org/325703002/)

Reason for revert:
broke some fast/canvas layout tests

Original issue's description:
> second try at landing improved blur rect
>
> BUG=skia:2095
> TBR=bsalomon
>
> Committed: https://skia.googlesource.com/skia/+/e9ea0d6b7d59ac3b7e257281e545b24bcc0d2a76

R=bsalomon@google.com, reed@chromium.org, humper@google.com
TBR=bsalomon@google.com, humper@google.com, reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2095

Author: reed@google.com

Review URL: https://codereview.chromium.org/322423002
lurTest.cpp
92dbf3cce2a8b7e2d786160b05ce4340571558fe 10-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Fix error revealed by Android unit test" into master-skia

https://skia.googlesource.com/skia/+/9058d60

Change-Id: I777fdc59bb9c9ddb51ab23a09e3511b41be3ff89
9058d602d0303c4d601bea260929367a8be37f04 10-Jun-2014 robertphillips <robertphillips@google.com> Fix error revealed by Android unit test

The issue is/was that the original Picture/PictureRecorder that is being partially replayed is not guaranteed to issue any more commands before attempting to modify the existing data. Such modification is prohibited if there is a extant copy-on-write snapshot. Rather then further complicate the SkWriter32::snapshot capability for a dis-preferred use case, this CL simply copies the operation data.

R=scroggo@google.com, reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/316063005
ictureTest.cpp
7680447c5f06a39aaa1800d2d2f33f3977af4c0c 10-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "hide SkBitmap::setConfig" into master-skia

https://skia.googlesource.com/skia/+/6c22573

Change-Id: I87bdb4df6c0990b034787cb17550e862d9658573
6c22573edb234ad14df947278cfed010669a39a7 10-Jun-2014 reed <reed@chromium.org> hide SkBitmap::setConfig

patch from issue 325733002

TBR=scroggo

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/322963002
RGBImageEncoderTest.cpp
achedDecodingPixelRefTest.cpp
txTest.cpp
d5a58ac5f73225fe14166feca76255be228258c1 09-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "second try at landing improved blur rect" into master-skia

https://skia.googlesource.com/skia/+/e9ea0d6

Change-Id: Ib49632717764330be7ac4925ccde7bcaf4817b53
e9ea0d6b7d59ac3b7e257281e545b24bcc0d2a76 09-Jun-2014 humper <humper@google.com> second try at landing improved blur rect

BUG=skia:2095
R=bsalomon@google.com
TBR=bsalomon

Author: humper@google.com

Review URL: https://codereview.chromium.org/325703002
lurTest.cpp
78ad38612d463fb454030afa3bd87d9dec3eb30d 09-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Reland "Clean up Test's resourcePath code."" into master-skia

https://skia.googlesource.com/skia/+/880914c

Change-Id: Iab157f094ba02d28e15903a6e589a155d14742d2
880914c35c8f7fc2e9c57134134c883baf66e538 09-Jun-2014 tfarina <tfarina@chromium.org> Reland "Clean up Test's resourcePath code."

This relands commit 91359bed48bc006a4319da86eb26db3b2e6d4afb (Clean up
Test's resourcePath code."

BUG=None
TEST=make dm && out/Debug/dm
R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/321723002
est.cpp
est.h
9503b8fb5bd302be3ae2ad9fc96b2cc91724a24f 09-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Generate path names on the client side" into master-skia

https://skia.googlesource.com/skia/+/5119234

Change-Id: Ida526ebeebc9f3fd3292bdd694179dae3574e383
511923443facc611b3735b4688342c12071feaa0 09-Jun-2014 cdalton <cdalton@nvidia.com> Generate path names on the client side

Pre-allocates a range of path names and manages allocations within
that range on the client side. This allows us to generate new path
objects in a feed-forward manner that doesn't require round trips to
the GL server.

BUG=skia:
R=bsalomon@google.com, markkilgard@gmail.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/304403003
ameAllocatorTest.cpp
b6725ec29a30b10c6a81ceb54121ab6e0838cc25 09-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Remove SkPicture::kUsePathBoundsForClip_RecordingFlag" into master-skia

https://skia.googlesource.com/skia/+/9f1c241

Change-Id: Iba32d7ee3aa3e986aeb0f3e1072a790b09ec5307
9f1c241e0d8a756fca1ec2dacb565eec83166d5f 09-Jun-2014 robertphillips <robertphillips@google.com> Remove SkPicture::kUsePathBoundsForClip_RecordingFlag

The real question is whether we ever want to record a picture without using the path bounds for a conservative (but faster) clip answer?

R=reed@google.com, mtklein@google.com, djsollen@google.com, scroggo@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/316143003
ictureTest.cpp
62f728db9eb621ae0580765a91a8fa29aa701050 08-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "No longer limit SkPictureRecorder::partialReplay to Android" into master-skia

https://skia.googlesource.com/skia/+/e2f2b98

Change-Id: Idfd1e5811292db71aec076a1e7f7ef74d87e60ee
e2f2b984443e870319e107374f7d786f243a20ae 08-Jun-2014 robertphillips <robertphillips@google.com> No longer limit SkPictureRecorder::partialReplay to Android

Toggling this for local testing is a bit of a chore.

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/316173004
ictureTest.cpp
ea70d565f6be937e2034d2bd5fad60f1cce9abfe 08-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of Clean up Test's resourcePath code. (https://codereview.chromium.org/319473003/)" into master-skia

https://skia.googlesource.com/skia/+/91359be

Change-Id: Ie155e17bfc0b77d9d1299a1e2a3cd0cc567ffc83
91359bed48bc006a4319da86eb26db3b2e6d4afb 08-Jun-2014 mtklein <mtklein@google.com> Revert of Clean up Test's resourcePath code. (https://codereview.chromium.org/319473003/)

Reason for revert:
Some benchmarks are written in a way that makes this change unsafe (e.g. const char* resPath = GetResourcePath().c_str(); in SkipZeroesBench) and Valgrind and ASAN caught that. We can try again after a more careful cleanup of GetResourcePath().

Original issue's description:
> Clean up resourcePath code.
>
> 1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test.
> 2) Make gResourcePath a static pointer to const char and move it inside the classes.
>
> BUG=None
> TEST=make tests && out/Debug/tests
> make gm && out/Debug/gm
> make bench && out/Debug/bench
> R=mtklein@google.com
>
> Committed: https://skia.googlesource.com/skia/+/52e4f413ffe2d281f9e90ff2147db08083ffcba7

R=tfarina@chromium.org
TBR=tfarina@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=None

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/320733002
est.cpp
est.h
351f94c121a0b7d96469b74c2893eee6d1c3de9e 08-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Clean up resourcePath code." into master-skia

https://skia.googlesource.com/skia/+/52e4f41

Change-Id: Iacf0d4b9f204b4bb8c355a71766a471d6b143687
52e4f413ffe2d281f9e90ff2147db08083ffcba7 08-Jun-2014 tfarina <tfarina@chromium.org> Clean up resourcePath code.

1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test.
2) Make gResourcePath a static pointer to const char and move it inside the classes.

BUG=None
TEST=make tests && out/Debug/tests
make gm && out/Debug/gm
make bench && out/Debug/bench

R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/319473003
est.cpp
est.h
447fef65aee5aad74a930cbbc8054701c71fc7f0 06-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Rollback of fe689c46 and all subsequent changes" into master-skia

https://skia.googlesource.com/skia/+/d78a2fa

Change-Id: I34929a399ce512f60dcd03e2d34acae5f7a8a964
d78a2fac37c1ee68420600542d3c02bff599655f 06-Jun-2014 jvanverth <jvanverth@google.com> Rollback of fe689c46 and all subsequent changes

BUG=skia:
R=humper@google.com
TBR=humper@google.com
NOTRY=True
NOTREECHECKS=True

Author: jvanverth@google.com

Review URL: https://codereview.chromium.org/324463005
lurTest.cpp
be1dbcabb522451f5d60195ac000b2eb8c75a9c6 06-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "disable GPU/CPU blur match test (possibly temporary)" into master-skia

https://skia.googlesource.com/skia/+/da1c009

Change-Id: Ieeaff46ce6bf76a67af9b09bae54fc096e7fb7bc
da1c00914e87c02d936c5833f03a37d7ec42b003 06-Jun-2014 humper <humper@google.com> disable GPU/CPU blur match test (possibly temporary)

BUG=skia:
TBR=jvanverth
NOTRY=True
NOTREECHECKS=True

Author: humper@google.com

Review URL: https://codereview.chromium.org/322593002
lurTest.cpp
9e143897ca864c4b577887b26250584ad1e2a75f 06-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Initial KTX encoder" into master-skia

https://skia.googlesource.com/skia/+/c250d2e

Change-Id: Ic51e46f0eb6a1ac4bd9cfabf25c9e7c2828eee38
c250d2e4abdbe8193357696518592af8a0b4555a 06-Jun-2014 krajcevski <krajcevski@google.com> Initial KTX encoder

The encoder comes with tests to check that the encoding/decoding
operations between ETC encoded bitmaps and ARGB bitmaps are sane.

R=bsalomon@google.com, robertphillips@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/312353003
txTest.cpp
a9637127438a0c795273e7892a0a6e897286b3cf 05-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add bench for rectanizers" into master-skia

https://skia.googlesource.com/skia/+/c2fce56

Change-Id: I68ed79afed16027837390ebc25d0f9fb048802ad
c2fce56522272c68c917e8f3d6a555cf21ec3161 05-Jun-2014 robertphillips <robertphillips@google.com> Add bench for rectanizers

R=bsalomon@google.com, jvanverth@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/319523003
puRectanizerTest.cpp
ab312cb7e11a396b04e93f042b198763bdd04e5e 04-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add non power of two gm for ETC1 bitmap" into master-skia

https://skia.googlesource.com/skia/+/2dc337c

Change-Id: Ib8e3cd42167df59861b34dff6a5975cd3aea09e0
5282a0f8411a6b3aa2d7d8c31346e17a8848e6a4 04-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)" into master-skia

https://skia.googlesource.com/skia/+/9b14f26

Change-Id: Ia93186cdaf386d75ca100bbf06f56e45733e903c
9b14f26d0f3a974f3dd626c8354e1db1cfcd322f 04-Jun-2014 robertphillips <robertphillips@google.com> Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)

R=reed@google.com, bsalomon@google.com, mtklein@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/313613004
anvasTest.cpp
mageFilterTest.cpp
ictureStateTreeTest.cpp
ictureTest.cpp
6a890e7034bcf44a7dd6697e6970f814e8852300 04-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Android: remove -lcutils dependency" into master-skia

https://skia.googlesource.com/skia/+/bec3634

Change-Id: I078b513c9037b748d98a424ad45625985bbdd7e1
ddab0f4933ecb5f10681270db9a201739a1075e8 03-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Return NULL when building empty LayerRasterizer." into master-skia

https://skia.googlesource.com/skia/+/65044bf

Change-Id: Icdf1891c186a10c9241298edd299932a79448536
2f71b3930dee4dda504f6a22f4268a01e80bb3a6 03-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Initial KTX file decoder" into master-skia

https://skia.googlesource.com/skia/+/99ffe24

Change-Id: Ic15bb7d26342ed31316404183f6dfdf3b6102855
30f01aa654a674703c0d02216cc6a44bc041b96e 03-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "remove SkBounder -- unused and unloved" into master-skia

https://skia.googlesource.com/skia/+/868074b

Change-Id: I8337c6210eb2034a756115ae06b0fefd320e0829
86167613a70e4fe2e77bf19bcddfeccafc9f0f7f 03-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Remove legacy picture recording" into master-skia

https://skia.googlesource.com/skia/+/dcf9ab1

Change-Id: Iac7a9088b8f7197e5eb581754324c880afc6ea99
65044bfe021e9c0023d78080583e9acb3bdb5ce7 03-Jun-2014 scroggo <scroggo@google.com> Return NULL when building empty LayerRasterizer.

In SkLayerRasterizer::snapshotRasterizer() and ::detachRasterizer(),
if no layers have been added, do not attempt to create an
SkLayerRasterizer. Instead, return NULL.

This fixes an error when running tests on Android.

Update dox to state that NULL may be returned.

Add tests.

R=reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/313653006
ayerRasterizerTest.cpp
99ffe24200d8940ceba20f6fbf8c460f994d3cd1 03-Jun-2014 krajcevski <krajcevski@google.com> Initial KTX file decoder

R=bsalomon@google.com, robertphillips@google.com, halcanary@google.com, reed@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/302333002
mageDecodingTest.cpp
868074b50b0fc3e460d2aa97c1096827fe0a1935 03-Jun-2014 reed <reed@google.com> remove SkBounder -- unused and unloved

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/312553006
anvasTest.cpp
dcf9ab14a194be0cbea896e1dc44a2a04106a38b 03-Jun-2014 robertphillips <robertphillips@google.com> Remove legacy picture recording

This is unblocked now that Android no longer uses the old interface.

This is just the first step in cleaning this up. Future CLs will constify SkPicture access in SkCanvas and split up the SkPicture/SkPicturePlayback/SkPictureRecord trio.

R=bsalomon@google.com, reed@google.com, mtklein@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/313613002
ictureTest.cpp
2d30d2a75c6fae5e441140c1f931f20dbaebf27d 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Clean up SkOnce:" into master-skia

https://skia.googlesource.com/skia/+/1b81877

Change-Id: Idf01cbb38333107ddd2d3c6c639da60c0cc2f58c
a513cd3ce7e7249134e271af3849365a571a3f49 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Move GrIPoint16 to SkIPoint16 (and remove GrPoint.h)" into master-skia

https://skia.googlesource.com/skia/+/d537341

Change-Id: I45b77fde82ef6eea8648d271c4bc5dee9df9fe1d
1b81877880253c75f835eede9a8ee21b9e7b584a 02-Jun-2014 mtklein <mtklein@chromium.org> Clean up SkOnce:

1 Remove atExit feature: clients can do it just as well as SkOnce can.
2 Remove support for functors: no one but the unit test did that.
3 Remove support for unused non-static SkOnceFlag (no SK_ONCE_INIT).
4 Add SkOnce variants for no-arg functions so we're not forced to pass dummy values all the time.
5 Merge SkSpinlock and SkOnceFlag, making all members private.
6 More notes about memory barriers, adding an acquire load after acquiring the spinlock.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/302083003
nceTest.cpp
d537341e16524d1e22ac5e6c8b9c8f274ba1833c 02-Jun-2014 robertphillips <robertphillips@google.com> Move GrIPoint16 to SkIPoint16 (and remove GrPoint.h)

R=bsalomon@google.com, reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/309683002
puRectanizerTest.cpp
592d3668fc0e16b2a2b0474363da1f9316616e61 31-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add a way for the gpu veto to report back the reason why it said no" into master-skia

https://skia.googlesource.com/skia/+/a1ff26a

Change-Id: Ifba09fefa7d1189106cf60330bc6e39e2c68f844
b145c1c4bb9432b0eb413137f761a297769a3475 31-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Allow SkPictureImageFilter to be serialized when not run cross-process." into master-skia

https://skia.googlesource.com/skia/+/97f5fc6

Change-Id: I11fc62a2d8abc127badbfe47b0b8012643f4a80b
a1ff26a64a0cfc337a321e6e923684bfdcadc2ec 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a way for the gpu veto to report back the reason why it said no

BUG=2334
R=bsalomon@google.com

Author: humper@google.com

Review URL: https://codereview.chromium.org/301423002

git-svn-id: http://skia.googlecode.com/svn/trunk@15012 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
1ab63bcb0d7769f36b4b3af7017cfc96af4441c9 30-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Implement SkPictureImageFilter bounds computation." into master-skia

https://skia.googlesource.com/skia/+/910702b

Change-Id: Ic51e85d0566b1a2b5497a5c5b1fac6fa1cbebb79
97f5fc651956287e78e35934cf62b9e1b45b4f6c 30-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow SkPictureImageFilter to be serialized when not run cross-process.

Picture serialization is not yet hardened, but it turns out we do need
serialization of SkPictureImageFilter for deferred SVG-on-SVG filters,
since the SkPaints (and thus the SkImageFilters) are serialized by
SkPictureRecord. However, deferred filters are always drawn in the
same process, so we can safely serialize them in this case. We do this
by turning the compile-time check for
SK_ALLOW_PICTUREIMAGEFILTER_SERIALIZATION to a runtime check for
isCrossProcess().

The image filter fuzzer sample was also modified to enable fuzzing
of basic picture image filters (the code had rotted a bit, being behind
an #ifdef that no one sets).

BUG=375162
R=sugoi@google.com

Review URL: https://codereview.chromium.org/311443003

git-svn-id: http://skia.googlecode.com/svn/trunk@15008 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
910702b564048d77e36a68b0f8dda7cc48a8fcff 30-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkPictureImageFilter bounds computation.

SkPictureImageFilter::onFilterBounds() was unimplemented, causing
incorrect results for SVG filters and impl-side painting (see Chrome
bug https://code.google.com/p/chromium/issues/detail?id=375162).

BUG=skia:
R=reed@google.com

Review URL: https://codereview.chromium.org/306733003

git-svn-id: http://skia.googlecode.com/svn/trunk@15003 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
f9df56f9b3ee2d774f1020a56737b03d632b11d2 30-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "check for null typeface from paint" into master-skia

https://skia.googlesource.com/skia/+/4927092

Change-Id: Iad95f425fee3499102d2c607352f9e49e839bb72
49270921860ce1cab9bf825e6038fa854943cc28 30-May-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for null typeface from paint

git-svn-id: http://skia.googlecode.com/svn/trunk@14998 2bbb7eff-a529-9590-31e7-b0007b416f81
ontObjTest.cpp
f56b9c160fe9eba8bfa1779a4ee54b0082a278b3 30-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Test font created from paint" into master-skia

https://skia.googlesource.com/skia/+/7ae034d

Change-Id: I6f79db659d1ea5eb92907a0c626dd309d7a37697
7ae034d651f3536457b9654e3a36a91716a18948 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Test font created from paint

This is meant to allow clients to migrate over to a SkFont api on canvas (e.g. drawText(text, font, paint)) while still permitting the current setters in paint (e.g. setTextSize, setFlags).

R=bungeman@google.com, eae@chromium.org, fmalita@google.com, fmalita@chromium.org

Author: reed@google.com

Review URL: https://codereview.chromium.org/245953003

git-svn-id: http://skia.googlecode.com/svn/trunk@14997 2bbb7eff-a529-9590-31e7-b0007b416f81
ontObjTest.cpp
fc2e97d9056663f04e3ce976115e4ab60446b140 30-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert "Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)"" into master-skia

https://skia.googlesource.com/skia/+/a3264e5

Change-Id: I311131f47d0d8ed9ba5a90397307bc07cffdbce2
a3264e53ee3f3c5d6a2c813df7e44b5b96d207f2 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)"

This reverts commit eecaea4148805834f223681f70b6488ceba12d09.

R=robertphillips@google.com, scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/301283003

git-svn-id: http://skia.googlecode.com/svn/trunk@14989 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapTest.cpp
anvasTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
ipeTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
haderOpacityTest.cpp
ritePixelsTest.cpp
4bd9b34431169fbd03286ddae94603df1c022572 30-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Sanitizing source files in Housekeeper-Nightly" into master-skia

https://skia.googlesource.com/skia/+/9681eeb

Change-Id: Ibaa8984bbdbc63e4eeb7c58f849d556af65878ee
9681eebb0e441cee25b6faac82c3728512acda27 30-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14984 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
f5160b2d8b3e4e36277492ca09242843c92add73 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)" into master-skia

https://skia.googlesource.com/skia/+/d0f824c

Change-Id: I76fecc0c9822d61101cbd18c26213f9562ed33fd
d0f824cfbd8951bb948b19d7ff5dce028ce557a5 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)

Reason for revert:
broke all Windows bots

Original issue's description:
> setConfig -> setInfo
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14978

R=robertphillips@google.com, reed@google.com
TBR=reed@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: epoger@google.com

Review URL: https://codereview.chromium.org/302053002

git-svn-id: http://skia.googlecode.com/svn/trunk@14979 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapTest.cpp
anvasTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
ipeTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
haderOpacityTest.cpp
ritePixelsTest.cpp
b3bfccd820781fe64ab38e7acc8373cd4712d05f 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "setConfig -> setInfo" into master-skia

https://skia.googlesource.com/skia/+/986d681

Change-Id: Iab2edfe4c31ee7e2df490dd9055cda2ffbce6de2
986d681f3e7a7eb6febd9df9fe21a8d277ba2296 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> setConfig -> setInfo

BUG=skia:
R=robertphillips@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/308683005

git-svn-id: http://skia.googlecode.com/svn/trunk@14978 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapTest.cpp
anvasTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
ipeTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
haderOpacityTest.cpp
ritePixelsTest.cpp
dd9fdd91285c6e71431bafc11d0d7b5bcabb203f 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add testing for Rectanizer-derived classes" into master-skia

https://skia.googlesource.com/skia/+/ad854bf

Change-Id: If4417333964928df4184bcbc44803891d061df1d
ad854bf9c0d2029cf0730e50ac7f7ddbe32d1c97 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add testing for Rectanizer-derived classes

This in preparation for expanding the Rectanizer API for removing rects and adding a new derived class

R=jvanverth@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/304313002

git-svn-id: http://skia.googlecode.com/svn/trunk@14972 2bbb7eff-a529-9590-31e7-b0007b416f81
puRectanizerTest.cpp
984c0c4ae9e15df19058d3286b822d56a4e677e7 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Remove SkRecorder's kWriteOnly mode." into master-skia

https://skia.googlesource.com/skia/+/a095041

Change-Id: If8c6e78ebc40fbe037bf6fa062e2d7c7801c0baf
a095041f5148dd1e71f38d0546335ed94199104b 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkRecorder's kWriteOnly mode.

I'm soon going to have SkRecorder start calling getTotalMatrix(), which
would be broken in write-only mode. That change is big and nebulous,
but it's clear kWriteOnly needs to go, so we might as well kill it now.

My notes in bench_playback about kWriteOnly mode being important were
probably overly cautious. I now think this is a fair enough comparison
even re-recording into a read-write canvas.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/290653004

git-svn-id: http://skia.googlecode.com/svn/trunk@14963 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordDrawTest.cpp
ecordOptsTest.cpp
ecordPatternTest.cpp
ecorderTest.cpp
92c9338e52b040dd21bfb87ce46e661050073505 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert "Revert of add colortable support to imagegenerator (https://codereview.chromium.org/304443003/)"" into master-skia

https://skia.googlesource.com/skia/+/00f8d6c

Change-Id: Ibc81e90565bae1c5374ed9d7838969ada08ea687
00f8d6c75d22ce8f95f932c5b101354b196fa0df 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert of add colortable support to imagegenerator (https://codereview.chromium.org/304443003/)"

Fix is to add colortable param to installPixels()

This reverts commit 924205aaf2e0c3c65dda13e0eaccde3e7b2a5c40.

BUG=skia:
R=scroggo@google.com, reed@chromium.org

Author: reed@google.com

Review URL: https://codereview.chromium.org/300263005

git-svn-id: http://skia.googlecode.com/svn/trunk@14958 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
itmapGetColorTest.cpp
achedDecodingPixelRefTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
urfaceTest.cpp
95ee3ab4e3f05c0419503aba593362ae59e2d595 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "29ac34e from Wed, 28 May 2014 19:29:25 +0000"

https://skia.googlesource.com/skia/+/29ac34ee526578fb0a01cd2d0c23c23e6a823d82

Change-Id: Ia985915672cc3a9f12601e967d3707d4db5dd54c
29ac34ee526578fb0a01cd2d0c23c23e6a823d82 28-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix filter bounds computation for SkOffsetImageFilter.

SkOffsetImageFilter::onFilterBounds() was not recursing into its input
filter when computing bounds.

BUG=374556
R=junov@chromium.org

Review URL: https://codereview.chromium.org/304743003

git-svn-id: http://skia.googlecode.com/svn/trunk@14928 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
4378cd44aab72f3e9db274146e10053d67831c46 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "924205a from Wed, 28 May 2014 16:16:08 +0000"

https://skia.googlesource.com/skia/+/924205aaf2e0c3c65dda13e0eaccde3e7b2a5c40

Change-Id: If51884b7e2065f10fcfad71134106d23f987a9bb
924205aaf2e0c3c65dda13e0eaccde3e7b2a5c40 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of add colortable support to imagegenerator (https://codereview.chromium.org/304443003/)

Reason for revert:
failing tests

Original issue's description:
> add colortable support to imagegenerator
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14916

R=halcanary@google.com, scroggo@google.com
TBR=halcanary@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@google.com

Review URL: https://codereview.chromium.org/300873007

git-svn-id: http://skia.googlecode.com/svn/trunk@14917 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
rawBitmapRectTest.cpp
7075fed639ffdbc07102155392bdaff2b4603954 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "b263985 from Wed, 28 May 2014 16:01:55 +0000"

https://skia.googlesource.com/skia/+/b263985850a7a74ccd5fda2abb057b04f7254e41

Change-Id: Ia315f65c6177fa7e7b40d70e6cbf917cf2f1f6f6
b263985850a7a74ccd5fda2abb057b04f7254e41 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add colortable support to imagegenerator

BUG=skia:
R=halcanary@google.com, scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/304443003

git-svn-id: http://skia.googlecode.com/svn/trunk@14916 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
rawBitmapRectTest.cpp
447e64e6290b53c3cba34714201322bdbf26a063 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "8e7d37d from Wed, 28 May 2014 03:06:06 +0000"

https://skia.googlesource.com/skia/+/8e7d37d8fea8c002c152a1509c461dba87d9eaca

Change-Id: Iab47c6bd45f06adfbaef49529faaef3e4fe2e7c5
8e7d37d8fea8c002c152a1509c461dba87d9eaca 28-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14912 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
08b5c3a57334c40213b8711898df93992ed3ef8d 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "6d3eaea from Tue, 27 May 2014 23:41:45 +0000"

https://skia.googlesource.com/skia/+/6d3eaeabddd03b1bf440345f1f3f9aa5b6dd0717

Change-Id: I2d482c48ba2540328b51eed5d45a6737f505c4df
6d3eaeabddd03b1bf440345f1f3f9aa5b6dd0717 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add replay entry point to SkPictureRecorder for Android

This CL adds an Android-only entry point to address the Java Picture(Picture) and serialize use cases. Note that (in its current form) it doesn't preserve the old API's handling of unbalanced saves/saveLayers (this CL always balances them).

R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/252873005

git-svn-id: http://skia.googlecode.com/svn/trunk@14911 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
f54f86182ba71d3c0893e48b4fead65902bc4491 27-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "2d970b5128f7270cd01a93e4ce68d0c3ea67ac71 from Tue, 27 May 2014 14:14:22 +0000"

Change-Id: I048da19f9f2654e28c5e36e17b7be843bb950279
2d970b5128f7270cd01a93e4ce68d0c3ea67ac71 27-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> hide discardable factory from public imagegenerator api

BUG=skia:
R=halcanary@google.com, scroggo@google.com, djsollen@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/295243006

git-svn-id: http://skia.googlecode.com/svn/trunk@14889 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
rawBitmapRectTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
b3a7857cd704c0f3d38bc8f6f5b82e4120f33325 23-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "e5a8e66668a1594e49b2c221f26da4c6d2a4e99f from Fri, 23 May 2014 20:25:15 +0000"

Change-Id: Ib0c8a25d287fc8adada8087a4aa61b2f0a661dde
e5a8e66668a1594e49b2c221f26da4c6d2a4e99f 23-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> move ashmem switching logic to SkDiscardableMemory::Create

R=scroggo@google.com, reed@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/293283002

git-svn-id: http://skia.googlecode.com/svn/trunk@14882 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
eaaabe643d88a36f9170edf62c4d63281e0b0430 23-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "968edcafa61442dc4f7f8ed8f89523d0f353e9fb from Fri, 23 May 2014 13:21:55 +0000"

Change-Id: I8026009f595f1d07d6ad3a883da0238290b518d9
968edcafa61442dc4f7f8ed8f89523d0f353e9fb 23-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> stop calling SkBitmap::flatten

BUG=skia:
R=scroggo@google.com, halcanary@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/295793002

git-svn-id: http://skia.googlecode.com/svn/trunk@14867 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
41e23fb34a98a4e9881e64a173c21f3d4880ec42 22-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "9e34473d7370a2aedf5b3f85c1d3aec40850829b from Thu, 22 May 2014 19:58:22 +0000"

Change-Id: I90ddc4d09d666ca6eda50314b9801f151a0156cc
9e34473d7370a2aedf5b3f85c1d3aec40850829b 22-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove bit rot test gyp

BUG=skia:2597
R=epoger@google.com
TBR=epoger
NOTRY=true

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/296053016

git-svn-id: http://skia.googlecode.com/svn/trunk@14856 2bbb7eff-a529-9590-31e7-b0007b416f81
kpSkGrTest.cpp
862c0b8e58cff43625de612415fad23731b6820d 22-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Manual merge Skia into Android.

Change-Id: I66b251aa66696b46f3eca878083392d62f217ef0
8cf81e0f4fa2a8054ac4cea1e7490028809cb893 22-May-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Simple PKM image decoder.

https://codereview.chromium.org/292663011/



git-svn-id: http://skia.googlecode.com/svn/trunk@14852 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
cfc89e3b5735c9383c57ef0db0f84a5afca0ba94 22-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "8be07bb12d1f7a2d08fa154320fbe6940b370ea1 from Thu, 22 May 2014 14:58:53 +0000"

Change-Id: I313a1c357bd42f6fa348558afabc1df55f7d3362
8be07bb12d1f7a2d08fa154320fbe6940b370ea1 22-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> In convexity checker don't advance last vector when x-product isn't significant.

BUG=skia:2235
R=caryclark@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/298973004

git-svn-id: http://skia.googlecode.com/svn/trunk@14845 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
2ddc4538ab4332593abc70c98e16a5bb2279087b 22-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "83f23d87f1d67e6e73873e1ef7cda621c43703a0 from Thu, 22 May 2014 12:27:41 +0000"

Change-Id: Ifad7dabbbef49635d978b604b9870c834ba3a8d1
83f23d87f1d67e6e73873e1ef7cda621c43703a0 22-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unused (by clients) SkUnitMapper

This reverts commit 874423a81b5bc2541c7397e6ab00d5e7c9fdaf98.

TBR=scroggo

Author: reed@google.com

Review URL: https://codereview.chromium.org/288313009

git-svn-id: http://skia.googlecode.com/svn/trunk@14842 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
e7e3e36f97304bc0e66e33706e7dcac7dced28c8 22-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "3339ac54a5ed75f2872ab16e9052a8b9ff3564bf from Thu, 22 May 2014 02:55:59 +0000"

Change-Id: Ided0413e302c2e0579438695edfe4ecd13b85a80
3339ac54a5ed75f2872ab16e9052a8b9ff3564bf 22-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/) (https://codereview.chromium.org/288343009/)

Reason for revert:
required blink change failed to land

Original issue's description:
> Remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/)
>
> This reverts commit dd50c83b5b34dab3a077741861b50ed1f2bc6b8f.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14830

R=scroggo@google.com, reed@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/296823008

git-svn-id: http://skia.googlecode.com/svn/trunk@14838 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
b48e25d98c110f7285ac39ccbe9c4a076303c099 21-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "4b8f8022550daa7458ed3de207d1300917d4a8cb from Wed, 21 May 2014 19:56:46 +0000"

Change-Id: I0426338ff1eb72682ddb325ca4571bd92ac0d926
4b8f8022550daa7458ed3de207d1300917d4a8cb 21-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/)

This reverts commit dd50c83b5b34dab3a077741861b50ed1f2bc6b8f.

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/288343009

git-svn-id: http://skia.googlecode.com/svn/trunk@14830 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
005a98d93d9735e07e59250441a28034f54efd53 20-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "6a106ce251bd531ab6792d72ab50770149b3675e from Tue, 20 May 2014 19:02:55 +0000"

Change-Id: I796f4052c886f1f054062d54ea422e561042fd13
311a3cda9457d50cc7c2a0fc9f153a9ce2c8cb8e 20-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add function to get both min and max scale factors from matrix

R=reed@google.com, jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/298473002

git-svn-id: http://skia.googlecode.com/svn/trunk@14804 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
1878651990d7c9da72cf43481432232bbef3550d 20-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename SkMatrix::get(Max|Min)Stretch to get(Min|Max)Scale

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/295713002

git-svn-id: http://skia.googlecode.com/svn/trunk@14798 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
b83998f885d30f0a7a411a4df41852ef9cdb2e45 19-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "99bd7d817471ec903a7fe364b4e1d4477b1372b5 from Mon, 19 May 2014 15:51:12 +0000"

Change-Id: Idd39cdf96628d60bf3cee04ac155a9ac0d42455a
99bd7d817471ec903a7fe364b4e1d4477b1372b5 19-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Try out SkMatrix::Concat.

This should RVO to the same as doing it on the stack with setConcat.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/293693002

git-svn-id: http://skia.googlecode.com/svn/trunk@14782 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
375799a10d6a576abf74009db532f7c404936cae 19-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "f9246e209873426f19d7245173a575623580bb84 from Fri, 16 May 2014 16:03:57 +0000"

Change-Id: I1f4fff69cfb5bc59265f42f4b886c149c53b0354
0a98d870448f66ea0df7c37a47b38cf2d3b734e5 19-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't clobber initial transform with SetMatrix.

BUG=skia:2378
R=reed@google.com, mtklein@google.com, robertphillips@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/290883004

git-svn-id: http://skia.googlecode.com/svn/trunk@14778 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordDrawTest.cpp
ecordOptsTest.cpp
ecordTestUtils.h
821650655be1519039ae9a4a4c2e5873c02ba354 19-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Ensure playing back a picture always balances saves and restores

This "fixes" the legacy interface's possible creation of pictures with unbalanced save/restores.

The Android dox will need to be updated once/if this lands.

R=reed@google.com, scroggo@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/286033005

git-svn-id: http://skia.googlecode.com/svn/trunk@14772 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
f9246e209873426f19d7245173a575623580bb84 16-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14761

Change-Id: Iad6655f881e4f8bbd889e10542b2f11cef34444e
e2b193ca5c76f01f8e12b4a92e9bd6ccb3ed4280 16-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of remove unused (by clients) SkUnitMapper (https://codereview.chromium.org/283273002/)

Reason for revert:
does not address all legacy callsites in chrome.

e.g.

[13:45:32.091872] ../../ui/native_theme/native_theme_base.cc:608:76: error: no matching function for call to ‘SkGradientShader::CreateLinear(SkPoint [3], SkColor [3], NULL, int, SkShader::TileMode, NULL)’
[13:45:32.091919] gradient_bounds, colors, NULL, 3, SkShader::kClamp_TileMode, NULL));


Original issue's description:
> remove unused (by clients) SkUnitMapper
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14761

R=robertphillips@google.com, scroggo@google.com, george@mozilla.com
TBR=george@mozilla.com, robertphillips@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@google.com

Review URL: https://codereview.chromium.org/287063009

git-svn-id: http://skia.googlecode.com/svn/trunk@14763 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ee0cac336c6a3a357ae3cb18be8ef4b3cb5edddb 16-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused (by clients) SkUnitMapper

BUG=skia:
R=robertphillips@google.com, scroggo@google.com, george@mozilla.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/283273002

git-svn-id: http://skia.googlecode.com/svn/trunk@14761 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
a93df32a44b01e40571ba72a3f99ebf1bf6cc3f2 14-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14741

Change-Id: I01dfb9b547ff2405e24a7647da73b2f4943be1b1
47b679b37dbbe4581c605c24890de9cafd974bb3 14-May-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> comment out info4 test until Rob can fix it

git-svn-id: http://skia.googlecode.com/svn/trunk@14741 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
4f96f663e18170723c819cd6513f1b68e0a37714 14-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14729

Change-Id: I5b53c07d6e18796cfb0de4fc77039a9348a8f95f
d0490172e5ba729181e238f19da6194cd135ba25 14-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland bug fixes from "4x allocation in PipeController is probably overkill."

BUG=372671
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/283093002

git-svn-id: http://skia.googlecode.com/svn/trunk@14727 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
172e28bb1061d8a154273b8b73918255e2212548 14-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14725

Change-Id: I9cfb908e05cb8362dab72470fb9f7a4c2c78b7cd
f700fb2f139cc38f6ba3571db6cfe0a2e1bbc8c0 14-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Manually revert "4x allocation in PipeController is probably overkill."

This reverts commit 2d91efffdb57646a495de5bf859ff281ef86dd12.

Conflicts:
src/pipe/SkGPipeWrite.cpp

BUG=372671
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/277653004

git-svn-id: http://skia.googlecode.com/svn/trunk@14725 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
1579ee7ce957fe199ee45c2bed1769a321c85420 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14682

Change-Id: I2d0ef48dfd1ccfabc084084f5c33b12e0b029abf
b7acbfe0ee940863b5e2350b0b0c3795e01751f5 09-May-2014 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Flatten resources directory

On android trybots, the files in a subdirectory weren't being
loaded onto the device. Consequently, the ImageDecoderOptions
test was not testing anything. I had to relax that unit test
to reflect the existing behavior of our libjpeg decoder on
Android.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/264583007

git-svn-id: http://skia.googlecode.com/svn/trunk@14682 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
f013781264f7ec98c489187becad79326f3f4ef3 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14679

Change-Id: I27316960d43008d1d1d12dc31df161a5b91f265b
f9dc07c80a9ec65863b883ca9a2537c8fea1f8c5 09-May-2014 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Flatten resources directory"

Review URL: https://codereview.chromium.org/278033002

git-svn-id: http://skia.googlecode.com/svn/trunk@14679 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
35e1ec30dd0c02b2638b8df169e41b3d37f5538e 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14678

Change-Id: I518514c1b6dc1b0a974e26f8df79a2e672fc2e56
e5e96021a05f22ffbb72a201790bd67bff4f8a93 09-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Flatten resources directory

On android trybots, the files in a subdirectory weren't being
loaded onto the device. Consequently, the ImageDecoderOptions
test was not testing anything. I had to relax that unit test
to reflect the existing behavior of our libjpeg decoder on
Android.

R=djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/264583007

git-svn-id: http://skia.googlecode.com/svn/trunk@14678 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
4d3e2e8292551407ee5a0b5bda62729fbfb774bc 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14669

Change-Id: I26d49ca7c94ba0fb5135bdeff9ed9d5a7424e196
95c2003740c4cd01fd1b02ed93b9de7227b1d0f5 09-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> cleanup GrContext resource cache api

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/275563005

git-svn-id: http://skia.googlecode.com/svn/trunk@14669 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
urfaceTest.cpp
9a237ed9015435933628988eb2808f1bc43d212f 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14661

Change-Id: Iebd36d57bfed1642fa0ee2bb480cf0fbc0262e08
8a1e688552e8bc6b70633a56ea4769ee168a5f49 09-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14661 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
aabd5cf6e540d53c49fef9368d56a342aa0d6590 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14659

Change-Id: Ib210b27bdba93c63a9104babcf18cfc6087fd8ca
f97d65dc256111f1de6bbf3521c7cd3cf3e70f60 09-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix rendering artifacts in pull-saveLayers-forward mode

This CL fixes 2 bugs in the pre-rendering of saveLayers:

1) The drawBitmapRect call wasn't occurring in device space so could sometimes be double transformed

2) The BBH op skipping in SkPicturePlayback could sometimes mess up the SkPictureStateTree's state

It also reduces the number of layers that are pre-rendered when a BBH is not in use.

Committed: http://code.google.com/p/skia/source/detail?r=14650

R=bsalomon@google.com, reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/267293007

git-svn-id: http://skia.googlecode.com/svn/trunk@14659 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
270416b562372ff6ac17455d5860cfdc5d67818a 08-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14655

Change-Id: I412f2cf5d6fe47879a636a34b9a829cf479c0ef1
888e4687d96b6af5b5c0efbcf05fcdc010ea8aa2 08-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Split Star into Star (stores nothing) and List (stores matches).

Just noticed that the cull noop pattern (PushCull, Star<NoOp>, PopCull)
would trigger the Star that stores matches. We certainly don't need
those matches here, so instead of magically determining which Star you
need, we'll make you tell us which one you want.

No one but List's unit test needs List. I'll leave it for now, but we
might find it's not useful.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com, bungeman@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/275623002

git-svn-id: http://skia.googlecode.com/svn/trunk@14655 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordPatternTest.cpp
541211326199361c60d9d2b5364722a6b37b2945 08-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14653

Change-Id: Id43618b06523ca1dcc415dc8908b7c1f22aeb38e
1e44730ade943bba928f289ce9f59430c50c71e5 08-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Noop away PushCull/PopCull pairs with nothing between them.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/277613002

git-svn-id: http://skia.googlecode.com/svn/trunk@14653 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordOptsTest.cpp
d3ce6e9d7e9df887df34709e4cd12b339a1a018f 08-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14636

Change-Id: Id5c377acfddb479b9cfc56120ffaa16ae90a2b8b
b2c82c99f891e4e846e4959c811661bf68fa43d6 08-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14636 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicLineIntersectionIdeas.cpp
64190f2fe64173b23d588f54a43a5f026fb8a7c1 08-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14634

Change-Id: I87de7729a2a2f8fd2c9c4d605891fd99992aeae4
37f6e62f114b72d34bcd3140b16b3b30fe5750c8 08-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Move paints to the front of draw structs.

The order of arguments in these structs is arbitrary, so we might as well arrange them to optimize something. Putting the paints at the front means the logic to find the paint is a lot more concise: it's usually just ptr+0, or *(ptr+0) when the SkPaint is optional.

This considerably reduces the size of the jump table in IsDraw::operator().

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/272673002

git-svn-id: http://skia.googlecode.com/svn/trunk@14634 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordTest.cpp
75536cab3b02b3c681d29c9d1c6083ca8dbb919a 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14631

Change-Id: Ic4e9ae1493907f1f1cf30b955f75591ff9299688
c71da1f6ed3a5e1a3eb2dd860b8129e1b423f9f4 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Convert all SkRecordPattern matchers into SkRecord mutators.

- Allow any return type from SkRecord mutators and visitors;
- update existing calls to mutate and visit;
- convert match to operator() in SkRecordPattern;
- tidy up a few inelegant bits of old code in tests.

The net result is that the generated code is much clearer. All the mutate() calls
inline as you'd hope, and you can now actually follow along with the disassembly.

BUG=skia:2378
R=fmalita@chromium.org, bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/273643007

git-svn-id: http://skia.googlecode.com/svn/trunk@14631 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordOptsTest.cpp
ecordTest.cpp
ecorderTest.cpp
8d954f2d70e2049145bd09c0f22e2b4d260b54a0 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14630

Change-Id: I6f9df7a9db8032340e6a2037f78a982bea09c2fe
ba31f1d341bac57ca76a75d67f64434b4b371dc6 07-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Some small cleanups for image filter code.

Use the 2-param flavour of mapVector instead of the 3-param, where possible.
Add an SkMatrixImageFilter test case to the tiling unit test.

R=junov@chromium.org

Review URL: https://codereview.chromium.org/277543002

git-svn-id: http://skia.googlecode.com/svn/trunk@14630 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
fcb1bfba0ce983c8a182913c0523c177e2bfd2f0 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14627

Change-Id: I41dbee390df9da251855fd155277735642d04eb5
d4db657bf54ae5346cb142fed2f83ea88544a733 07-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for SkDisplacementMap::onFilterBounds().

Two problems: we were not applying the CTM to the scale parameter when
modifying clip bounds, and the recursion for onFilterBounds() must be done
in the reverse order.

BUG=370914
R=junov@chromium.org

Review URL: https://codereview.chromium.org/272643003

git-svn-id: http://skia.googlecode.com/svn/trunk@14627 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
d8c8d94048735d05db76d3f36037164cb49f2118 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14618

Change-Id: I049811218463f71247a92ab2c4195e383ece19c8
467705adf05ba99bbd9ccdf6a40eb463484a6fbf 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> save-draw*-restore -> noop-draw*-noop

save-drawA-drawB-drawC-restore always means drawA-drawB-drawC,
no matter what flags we use for save().

This one triggers all over the silk SKPs and in several of the bot SKPs, typically as save-drawBitmap-restore.

BUG=skia:2378
R=robertphillips@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/267793006

git-svn-id: http://skia.googlecode.com/svn/trunk@14618 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordOptsTest.cpp
b9038cdd159863c120934ef42bb0721973da9977 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14614

Change-Id: If313097a39655bda0e779f67198c5a1ef68173bf
2db7fe7d3b7ee875e1099a22f0af17520696f5d7 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> When solving the cubic line intersection directly fails, use binary search as a fallback.

The cubic line intersection math empirically works 99.99% of the time (fails 3100 out of 1B random tests) but when it fails, an intersection may be missed altogether.

The binary search is may not find a solution if the cubic line failed to find any solutions at all, but so far that case hasn't arisen.

BUG=skia:2504
TBR=reed@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/266063003

git-svn-id: http://skia.googlecode.com/svn/trunk@14614 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicLineIntersectionIdeas.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsOpTest.cpp
f14668be1ece77d90b92fdb5a83221909a8620cf 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14613

Change-Id: I42bdabb6849b4502b22375d77927a08d55eb54a1
2d91efffdb57646a495de5bf859ff281ef86dd12 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> 4x allocation in PipeController is probably overkill.

When verylargebitmap GM runs in cross-process pipe mode, we're
requestBlock()ing ~200M to carry the bitmaps. The current
implementation ends up allocating ~800M, which is a bit wasteful.

SkGPipeWrite already rounds up to 16K, so just rely on that.

This change exposed several bugs in pipe:
- we don't reserve enough space in drawVertices
- we don't reserve enough space for factory names in cross-process mode
- we don't quite have the right check in needOpBytes to see if we needed to send off the current block and allocate a new one

SETUP_NOTIFY and generally calling doNotify() more often than necessary made things hard to debug and understand. Now the pipe always waits to send off its current block until it needs more space than that block can provide, or it's the final block. We can put these back if we need the proactive flushing, but it seems not necessary?

Removed an assert in DeferredCanvasTest, which is somtimes 2 (Debug), sometimes 3 (Release). It seemed like the other asserts were more essential, and this one was more of a white-box assertion. Still sound if we remove it?

BUG=skia:2478
R=scroggo@google.com, mtklein@google.com, reed@google.com, junov@chromium.org

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/267863002

git-svn-id: http://skia.googlecode.com/svn/trunk@14613 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
cf33369b84ff0d042c8354297959f64de77724f6 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14610

Change-Id: I1c30a1ddd655e91a8d36f409ba4619376ad96cf0
f5bf3cf0257dc3d18932bde51f8eae33442e071f 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SaveLayer-Draw-Restore optimization.

This is like SkPictureRecord's remove_save_layer1 but works with all draw calls.

Interesting patterns removed:
SaveLayer-DrawRect-Restore: Silk SKPs, desk_weather
SaveLayer-DrawPath-Restore: desk_carsvg, desk_wowwiki, tabl_androidpolice
SaveLayer-DrawPosTextH-Restore: tabl_android_police
There may be others, but I stopped looking.


BUG=skia:2378
R=robertphillips@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/269813010

git-svn-id: http://skia.googlecode.com/svn/trunk@14610 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordOptsTest.cpp
7c364ee90cd32e02080e8876280793b732774d04 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14608

Change-Id: I2a0324d4e1545d24c5aff87cc61ccf1361d94828
8cca4cc56074571f20f28b5caf7b96b5c241de75 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Split CPU and GPU DeferredCanvas tests

Nothing important, just happened to notice this and figured it was good hygiene.
DEF_TESTs run in parallel, while DEF_GPUTESTs run all run serially.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=14603

R=junov@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/271483002

git-svn-id: http://skia.googlecode.com/svn/trunk@14608 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
e93cf7ac7de2420e8a8d11f787ecf4eb6a4e2db9 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14607

Change-Id: I10c90aac7c2ef2f2148885eb77730485d4c8aa58
dbf25181bdc9b161d841725c387bc95cb3c9243f 07-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Split CPU and GPU DeferredCanvas tests (https://codereview.chromium.org/271483002/)

Reason for revert:
breaking the run tests steps on ChromeOS. See http://108.170.220.120:10117/builders/Test-ChromeOS-Alex-GMA3150-x86-Debug/builds/1669

Original issue's description:
> Split CPU and GPU DeferredCanvas tests
>
> Nothing important, just happened to notice this and figured it was good hygiene.
> DEF_TESTs run in parallel, while DEF_GPUTESTs run all run serially.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14603

R=junov@chromium.org, mtklein@google.com, mtklein@chromium.org
TBR=junov@chromium.org, mtklein@chromium.org, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/270283003

git-svn-id: http://skia.googlecode.com/svn/trunk@14607 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
aebb7050e8bec307c583f33acaecd42f32728dd3 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14605

Change-Id: Ibe5013154fa8da37a83aab0e53524b2b5d5bc715
a5b068cc058ee00533a781874a9799fd5d74b4dd 07-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14605 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
6aa0b73e00ab42222e0e9f3739ad6ae844d173fe 07-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14604

Change-Id: I4752f26eec47fbeb515cc08ad2f5b6223a80d107
68250c8e7c2bf5d669397c849259c3bcad40237e 07-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for empty saveLayer() with a filter which affects transparent black.

If an saveLayer()/restore() is recorded, tilegrid/rtree will cull them
out and not draw anything. This is correct for most cases, but if the
paint in the saveLayer() is one that affects transparent black (e.g.,
it contains a color filter or image filter which affects transparent
black), this is incorrect: the filter should be applied.

Fixed by adding a no-op between the saveLayer() and restore(), and
adding a bbox node pointing at that node with the saveLayer()'s bounds.

This exposed a bug in SkPictureRecord.cpp's match(), where it would
assert if the NOOP was the last op seen. Fixed with an early-out before
calling peek_op_and_size().

BUG=skia:2254

Review URL: https://codereview.chromium.org/262363007

git-svn-id: http://skia.googlecode.com/svn/trunk@14604 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
9049d050a88c99ef50bb62fdf0b1b793697746f2 06-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14603

Change-Id: Ic8dec5217f66b5febdf8b3c13c923ace4c74a8c7
0992404e3815b7b0d00c64fc4f6beceac4bba10f 06-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Split CPU and GPU DeferredCanvas tests

Nothing important, just happened to notice this and figured it was good hygiene.
DEF_TESTs run in parallel, while DEF_GPUTESTs run all run serially.

BUG=skia:
R=junov@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/271483002

git-svn-id: http://skia.googlecode.com/svn/trunk@14603 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
9d66b158042f56bdbb89e4bcf76b882679e079da 06-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14602

Change-Id: I6b3e50862bcc16787e8252db59aefa503692bb99
1b546462bb91e93cf2f033eb2dab53ec492b64ab 06-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SaveLayer is not a draw.

Will keep thinking about the best way to handle this:
- leave as-is
- tag the records
- some range check on T::kType
- just list all Draw* in IsDraw

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/269543023

git-svn-id: http://skia.googlecode.com/svn/trunk@14602 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordPatternTest.cpp
d8cfc2fca426585cfaa88698971a717eedc87bd0 06-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14586

Change-Id: I24db7cfc3c15d584ec92241257509bd2fb5e96d8
0205aba7d5e8802d2a3ef55d999f5aa41db3adc9 06-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Infrastructure changes to support pull-saveLayers-forward task

This is split out of (First pass at pre-rendering saveLayers for GPU - https://codereview.chromium.org/261663003/).

It mainly:

Moves NeedsDeepCopy to somewhere more accessible (so GrPictureUtils.cpp can use it)
Moves ComputeAccelDataKey somewhere more accessible (so GPUPicture test can use it)
Adds unit test for picture saveLayer analysis (done in EXPERIMENTAL_optimize)
Adds new fields to SaveLayerInfo that are needed to pull forward layers

Committed: http://code.google.com/p/skia/source/detail?r=14571

R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/266203003

git-svn-id: http://skia.googlecode.com/svn/trunk@14586 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
24d69ffe7d66ee1f2bb2f675caf53c67ebb51510 06-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14582

Change-Id: I03e9b5ffc8739c45e8f2389926079e6cf0d765fa
73fffeb83aab56bc8c2c5ce143ee9d132d64ac37 05-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add pattern matchers for SkRecord

This is a mid-level library for finding patterns of commands in an SkRecord. At the API level, it's a bit regex inspired. Some examples:
- Pattern1<Is<DrawRect>> matches a single DrawRect

- Pattern1<Star<Is<DrawRect>>> matches 0 or more DrawRects

- Pattern2<Is<ClipRect>, Is<DrawRect>> matches a single clip rect followed by a single draw rect

- Pattern3<Is<Save>, Star<IsDraw>, Is<Restore>> matches a single Save, followed by any number of Draws, followed by Restore

- Pattern1<Or<Is<DrawRect>, Is<ClipRect>>> matches a DrawRect or a ClipRect

- Pattern1<Not<Is<ClipRect>>> matches a command that's notClipRect.

Once you have a pattern, you can call .search() on it to step through ranges of matching commands. This means patterns can replace most of the custom iteration logic for optimization passes: the generic pattern searching steps through all the optimization candidates, which optimization-specific code further inspects and mutates.

SkRecordTraits is now unused. Bye bye!

Generated code and performance of SkRecordOpts is very similar to what it was before. (I had to use SK_ALWAYS_INLINE in a few places to make this so.)

BUG=skia:2378
R=fmalita@chromium.org, bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/263063002

git-svn-id: http://skia.googlecode.com/svn/trunk@14582 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordPatternTest.cpp
d6664b7d845e279ff2139cca85f20726a37f9b19 05-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14578

Change-Id: I90d8d5f324fc63df7afff39d05155f00a524ba13
300c6060c855cf607accaed969238b928833623d 05-May-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r14571 (Infrastructure changes to support pull saveLayers forward task - https://codereview.chromium.org/266203003) due to breaking Android unit tests



git-svn-id: http://skia.googlecode.com/svn/trunk@14578 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
01b0a8d7ba1160096b8ff2ec81c99746264bc529 05-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14576

Change-Id: I025d19e183e9b971fc9db926c310dbc65bcc2b45
11c6b39cfa24f812ceb115589f51a60a56ef14fe 05-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adds a mechanism for GrCacheable objects to notify the resource cache
when their size has changed. GrResourceCacheEntry now holds a
reference to the cache, and a cached value of the resource's most
recent size.

Also utilizes this new functionality for mipmaps, and adds a test for
changing resource sizes.

R=bsalomon@google.com, robertphillips@google.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/257093002

git-svn-id: http://skia.googlecode.com/svn/trunk@14576 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
cb424c6140bb642be82cb3fae8611376f9afb972 05-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14571

Change-Id: I85991e706881ab1f8c48a601d0be1ad5954ea8e1
6b392b6111fad269437517494b14be484cd762f6 05-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Infrastructure changes to support pull-saveLayers-forward task

This is split out of (First pass at pre-rendering saveLayers for GPU - https://codereview.chromium.org/261663003/).

It mainly:

Moves NeedsDeepCopy to somewhere more accessible (so GrPictureUtils.cpp can use it)
Moves ComputeAccelDataKey somewhere more accessible (so GPUPicture test can use it)
Adds unit test for picture saveLayer analysis (done in EXPERIMENTAL_optimize)
Adds new fields to SaveLayerInfo that are needed to pull forward layers

R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/266203003

git-svn-id: http://skia.googlecode.com/svn/trunk@14571 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
a15b8e7f904870970b1e952547404f74ee731e06 05-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14570

Change-Id: I9b31277b9c634a6beec5a5f5284c3ae4d5d80820
7066bf3fbff7a54d3692414ec11ca419f3fd0ad5 05-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Update tests/RecordOptsTest.cpp
- use REPORTER_ASSERT;
- assert the type first, then the pointer != NULL. This helps explain why ptr == NULL;
- add a simpler NoopSaveRestore test case, which can help debugging failures of the larger test case.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/264043012

git-svn-id: http://skia.googlecode.com/svn/trunk@14570 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordOptsTest.cpp
5936c49cda9ee57e56a4c65c05822618b5b41855 05-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14568

Change-Id: I5905a1fea5c98484e7b192209001433489d0c87d
3253f8360540453d21a7cbe9def4fbd8f876d8e1 05-May-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix double->float warning

git-svn-id: http://skia.googlecode.com/svn/trunk@14568 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
7131ed520200a5d1d7052341e88edda6837b04ed 05-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14566

Change-Id: I34661f64bc94edc006ef51e6accd8a6acb3374b2
4e332f82fce0126045e9cb2ef0a2097a6c4c40a3 05-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add rounding-using-doubles methods on SkScalar and SkRect

Inspired by the excellent repro case for https://crbug.com/364224

patch from issue 265933010

BUG=skia:
R=bungeman@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/267003002

git-svn-id: http://skia.googlecode.com/svn/trunk@14566 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
calarTest.cpp
a0f3bac7de8e4d820e1a830fa461c2630fab0fb1 02-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14553

Change-Id: Ifa9e301bc1beea954b4c90dc77fd2df8d37a3639
089a780c3355129eefc942246534bc1f126b8ccb 02-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Split GrResource into GrCacheable/GrGpuObject

Before this change, an object needed to inherit from GrResource (and
thus be a GPU object) in order to live in the GrResourceCache. That
was a problem for caching items that weren't GPU objects themselves,
but owned GPU objects.

This change splits GrResource into two classes:

1. GrCacheable: The base class for objects that can live in the
GrResourceCache.

2. GrGpuObject, which inherits from GrCacheable: The base class for
objects that get tracked by GrGpu.

This change is purely a refactor; there is no change in functionality.

Change-Id: I3e8daeb1f123041f414aa306c1366e959ae9e39e

BUG=skia:
R=bsalomon@google.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/251013002

git-svn-id: http://skia.googlecode.com/svn/trunk@14553 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
bf952f316176557eebd16eae376f9b13532bf7ec 02-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14543

Change-Id: I83f505b223385f9a9449a9e7249121b7d598b4a8
8c7372bbe8949f2864bd3d9df00d85c5669a74b1 02-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for SkMatrixConvolutionImageFilter with large borders.

Intersect the requested processing rect with the destination
bounds.

R=junov@chromium.org

Review URL: https://codereview.chromium.org/267863004

git-svn-id: http://skia.googlecode.com/svn/trunk@14543 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
70e99737ab14933ce66363f06ef98a6305d047e5 01-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14497

Change-Id: Ic4731d54f2ab033d74ee727f726d15a04e57219b
9195743aac79a4fa82059ab614b9795f215475f7 01-May-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a fix for a spurious assert in SkMatrixConvolutionImageFilter.

When matrix convolution processes border pixels with zero width, it
asserts in getAddr32() with an invalid x coordinate. The assert is
harmless, since the returned pointer is never accessed (the next line
is a loop from left to right, which does nothing, since left == right).
However, the fix is simple: early out on an empty rect before entering
the outer loop.

R=sugoi@chromium.org

Review URL: https://codereview.chromium.org/265693005

git-svn-id: http://skia.googlecode.com/svn/trunk@14497 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
b0c39f5a224db216e7e0d206ffb278b7736a3608 30-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14487

Change-Id: I455ddab5f7eff18bf4c4d323ba6f57bff8a03a96
1a98a0604b7bf1cf33cfb00ddd6399b4de4c1438 30-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> one valgrind.supp to rule them all.

R=mtklein@google.com, robertphillips@google.com, borenet@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/268473004

git-svn-id: http://skia.googlecode.com/svn/trunk@14487 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
b6b53cb5db8d4cb81103aa37f45c295f6a01d1aa 30-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14482

Change-Id: Id09b92cdd21aa52b1e34353e18fb463df62ac181
901d10d87b220909f57b951148f8c18527284516 30-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add Valgrind suppressions for nvidia driver.

Did we recently switch the machine Valgrind runs on from an ati card to
an nvidia one?

BUG=skia:
R=bsalomon@google.com, borenet@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/266473010

git-svn-id: http://skia.googlecode.com/svn/trunk@14482 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
a892abcbcebae415475402732d2587b800e91bfd 30-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14480

Change-Id: I5f6f248f3a4aa2b1ad749a6f94211e5c4aec12ac
86398e5d9149eaad2fd2c8dba5557aca645d2385 30-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid undefined behavior and enable asserts in ClampTest.

The old code here wasn't being careful to avoid int32_t overflow in slow_check. Fix that.

R_ASSERT hasn't been doing anything for a while. As a result, there are a couple bugs in SkClampRange, marked as such and commented out. The asserts also weren't quite passing, so I fixed them up (allowing 0xFFFF to be considered either as part of the ramp or part of V1.)

BUG=skia:2481
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/260523004

git-svn-id: http://skia.googlecode.com/svn/trunk@14479 2bbb7eff-a529-9590-31e7-b0007b416f81
lampRangeTest.cpp
a209ff5b1fb42c1be423e0116d35db373b4eaff3 30-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14458

Change-Id: I7db2b22445f01e81d408ad61555dd045cef9d8dc
91fc81c972c5ac4090f106d3b3fd9b26a3235ce1 30-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix cubic/line intersection; add skp tests

BUG=skia:2488
TBR=reed

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/252243003

git-svn-id: http://skia.googlecode.com/svn/trunk@14458 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicLineIntersectionTest.cpp
athOpsExtendedTest.cpp
athOpsOpTest.cpp
athOpsSkpTest.cpp
b972454f6908d6e5236ef27c7305c3d59ca7f6ad 30-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14456

Change-Id: I75c8a9d99af37ff80ac30ebd6d88740954650996
8dac8b18eea8a729062440b85285d19fc890bb1a 30-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Backfill unit tests for SkRecord

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/251133008

git-svn-id: http://skia.googlecode.com/svn/trunk@14455 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordCullingTest.cpp
ecordDrawTest.cpp
ecordOptsTest.cpp
897cb6ae19e632d72fb730a6f33cbac4889f32e1 29-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14434

Change-Id: I8a6c7c6602b19189e3f47778fab52202902ac42b
1ac99c890b8afe957385a7625fd3b759f31be249 29-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed issue found by clusterfuzz

An integer overflow was causing an issue when reading a string with a very large (or negative) size.

BUG=367764
R=senorblanco@google.com, senorblanco@chromium.org, reed@google.com, borenet@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/255693003

git-svn-id: http://skia.googlecode.com/svn/trunk@14434 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
705b1ff617ffe672e65d53bcaf3b690e8bb6b025 29-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't bother doing the empty clip check in SkRecordDraw.

On Mike's suggestion, I tested out not doing any empty-clip check at all in
SkRecordDraw, given that mostly we'll do that again anyway inside SkCanvas.

Most SKPs are identical to the status quo, whether bot or silk, played back in tiles
or full. Average playback performance, both arithmetic and geometric mean, is also
unchanged.

A handful of SKPs do draw faster or slower reliably, particularly when tiled. E.g. a
cnn tile draws about 40% faster, a cuteoverload tile about 20% slower. Their profiles
look pretty much the same before and after, so I can't really explain the changes.

I'd say, given that performance is mostly identical and very identical in bulk,
we might as well remove this code. It's nice to keep SkRecordDraw as dumb as possible.

BUG=skia:2378
R=reed@google.com, fmalita@chromium.org, mtklein@google.com, borenet@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/258183002

git-svn-id: http://skia.googlecode.com/svn/trunk@14433 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordDrawTest.cpp
0a5c233e3b911232c0d6f9a88ded99ecf88b8a97 29-Apr-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement bounds traversals for tile and matrix convolution filters.

Add a new GM that exercises tiled drawing all pixel-moving filters
(and some non-pixel-moving ones) and compares it against non-tiled
drawing of the same filters. Fixing this test revealed that tile and
matrix convolution filters had no onFilterBounds() traversals
(test-driven development FTW). Tile requires (conservatively) the
bounds to include the whole source rect, since it may end up in the
result. Matrix convolution requires the bounds to be offset by the
kernel size and target.

R=reed@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/258243005

git-svn-id: http://skia.googlecode.com/svn/trunk@14432 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
daaafa6e81860e3dc52660ba019c336f0a43f1e7 29-Apr-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add asAShadowBlur for android to drawlooper

BUG=skia:
R=djsollen@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/253633003

git-svn-id: http://skia.googlecode.com/svn/trunk@14431 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
58b38c2d473883bbc7f7c8a080560fe117cdfef6 29-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14430

Change-Id: Id34bf0a8fe8a0faae87c620542ddaa9f37121d7a
a31eacb22e12a4223740e53ff5a11bd08340106e 28-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor SkPictureStateTree::Iterator to avoid use of kClip_SaveFlag.

The current implementation relies on soon-to-be-deprecated
kClip_SaveFlag behavior. Updated to use default save flags
(kMatrixClip_SaveFlag) and stop assuming that the matrix survives
restore() calls.

R=junov@chromium.org, reed@google.com, robertphillips@chromium.org, robertphillips@google.com

Committed: http://code.google.com/p/skia/source/detail?r=14319

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/246893005

git-svn-id: http://skia.googlecode.com/svn/trunk@14421 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureStateTreeTest.cpp
e396455d2d60ddf8e625b5037254f3c09fbcdcf5 28-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> move common blur types into central header

BUG=skia:
R=scroggo@google.com, djsollen@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/253833002

git-svn-id: http://skia.googlecode.com/svn/trunk@14411 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
aintTest.cpp
2e0c32af0508a1e544c9953ea2fe128dbae7d429 28-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Start using type traits in src/record instead of macros.

Simplified skip logic by always running clip commands. No performance difference on bot or silk SKPs.

BUG=skia:2378
R=bungeman@google.com, fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/258693006

git-svn-id: http://skia.googlecode.com/svn/trunk@14410 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordDrawTest.cpp
52897aebb69b61a9e1d0505c14c3a0786ffa4b99 28-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14402

Change-Id: I67c1d657b96a828e8ae8424fbf9557b25ca4b27f
9c9005a347e9996f357bd79591bd34f74f8bbc66 28-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Move SkShader::fLocalMatrix into SkShader constructor.

As a first step towards removing SkShader::setLocalMatrix, which will make
SkShader thread-safe, remove calls to setLocalMatrix that happen immediately
after the shader is being created. Instead, pass the matrix into the constructor
or factory method.

BUG=skia:1976
R=scroggo@google.com, reed@google.com, skyostil@google.com, mtklein@google.com

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/245963010

git-svn-id: http://skia.googlecode.com/svn/trunk@14401 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
679f3b23e76244de2354382256dcaa14cb027764 28-Apr-2014 Leon Scroggins III <scroggo@google.com> Manual merge upstream Skia at r14396.

Conflicts:
src/effects/gradients/SkLinearGradient.cpp

Change-Id: I96744c07a37b03ff781942a3b2171c88cab171a4
e02c5dabbbfefca3e086b3653d71a7a4a9713277 26-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14387 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsSkpClipTest.cpp
8cb1daaa1e4343eb60a7c4f21c12e33de30dad64 25-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix minor skp-found bugs

remove globals from pathops_unittest

BUG=skia:2460
TBR=mtklein

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/239563004

git-svn-id: http://skia.googlecode.com/svn/trunk@14378 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsDebug.cpp
athOpsExtendedTest.cpp
athOpsOpLoopThreadedTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsThreadedCommon.cpp
b950c6fd7188d625ed64ee6a3ea4f66d6d52e10c 25-Apr-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix r14368 (First pass at GPU veto) for non-GPU builds

https://codereview.chromium.org/255733002/



git-svn-id: http://skia.googlecode.com/svn/trunk@14369 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
e2cb12a82ad924f7b134a9459b190213485c6a50 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> First pass at GPU veto

As a short term solution this CL collects information during the recording process for use in suitableForGpuRasterization.

BUG=366495
R=bsalomon@google.com, reed@google.com, alokp@chromium.org

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/251533004

git-svn-id: http://skia.googlecode.com/svn/trunk@14368 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
915b972a818d0279eb926af38ba6952daa17a63e 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland "Properly set alpha type in webp decode."

Also use the newer setConfig function.

Add a test to confirm that we set the alpha type properly.

Add some images with alpha for testing. (These images are also
beneficial for the compare_unpremul test, which was previously
not meaningful on 100% opaque images.)

All of the added images are in the public domain. They were
taken from https://developers.google.com/speed/webp/gallery2:

yellow_rose:
"Free Stock Photo in High Resolution - Yellow Rose 3 - Flowers"
Image Author: Jon Sullivan
This file is in the public domain.
http://www.public-domain-photos.com/free-stock-photos-4/flowers/yellow-rose-3.jpg

baby_tux:
"baby tux for my user page"
Image Author: Fizyplankton
This file is in the public domain.
http://www.minecraftwiki.net/images/8/85/Fizyplankton.png

NOTRY=true

TBR=halcanary@google.com

BUG=skia:2388

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/252423008

git-svn-id: http://skia.googlecode.com/svn/trunk@14360 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
76a3b2abd02841c4ae786ac4cf59c3a51c545f73 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove support for inheriting the paint color from SkColorShader

BUG=skia:2453
R=reed@google.com, mtklein@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/248033003

git-svn-id: http://skia.googlecode.com/svn/trunk@14355 2bbb7eff-a529-9590-31e7-b0007b416f81
haderOpacityTest.cpp
732bd66ac2aea4bacd1e7e8f33628f7efb50f1d0 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rearrange SkRecord public API to fit better with cc/resources/picture

BUG=skia:2378
R=reed@google.com, danakj@chromium.org, enne@chromium.org, mtklein@google.com, robertphillips@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/248033002

git-svn-id: http://skia.googlecode.com/svn/trunk@14351 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordingTest.cpp
8f831f262f5e57665587cb3033860eea39fe1621 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> First step in pulling SkPicturePlayback & SkPictureRecord out of SkPicture

This CL begins the process of making SkPicturePlayback & SkPictureRecord independent of SkPicture. It just moves the PathHeap into SkPicture to get a feel for where all this is going to lead.

Some items of note:

SkTimedPicture (debugger/QT) should wind up being just an SkPicturePlayback-derived object.

All the flattening & unflattening should migrate out of SkPicturePlayback and into SkPicture.

SkPicture::initForPlayback should eventually become something just SkPictureRecorder::endRecording calls.

SkPicture is passed into SkPicturePlayback's & SkPictureRecord's constructors. SkPicturePlayback only
holds onto a "const SkPicture*". The SkPicturePlayback:: CreateFromStream & CreateFromBuffer methods pass a non-const
SkPicture* down the call stack.

BUG=skia:2315
R=reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/249453002

git-svn-id: http://skia.googlecode.com/svn/trunk@14341 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
f72073b7303e3cdc090f9deb783f4160baa6ea83 23-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14322

Change-Id: Ia1c008aa2b124bdf8b5a269f5538ceaf53ad72c8
ea26a0e14f1f88ccffa15c149892008aa9f52f3e 23-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> comment out SkDebugf (only needed for local testing)

TBR=mtklein@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/248713003

git-svn-id: http://skia.googlecode.com/svn/trunk@14322 2bbb7eff-a529-9590-31e7-b0007b416f81
lampRangeTest.cpp
f2608195c1c08069b73c2e1a6bd2dcb6e546da0e 22-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14300

Change-Id: I674ccd4f20b27c6cdebd4ec3186747f2c1863036
88c3e279ab79125e5741b0b0b3175291e2e2bbee 22-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor SkRecord opts, converting playback optimizations where possible.

This adds back two optimizations from SkPicture: drawPosText strength reduction to drawPosTextH, and pointless save-foo-restore blocks are noop'd away.

The small-T optimization in SkRecord gets in the way of implementing replace(), so I removed it.

Just to keep the API focused, I removed the methods on SkRecord that iterate over i for you; it's just as efficient to do it yourself, and all of the interesting code does its own custom iteration.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/245853002

git-svn-id: http://skia.googlecode.com/svn/trunk@14300 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordCullingTest.cpp
ecordTest.cpp
ecorderTest.cpp
b6c61973919a4e6588eb07776a3de987dc518aec 22-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14297

Change-Id: Iaffba68029c09850cf01350199f00b749969c8a9
aec143824c9be4e4af6e2cb7cce3d2d2268c0b15 22-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add asADash entry point into SkPathEffect to allow extracting Dash info from PathEffects

BUG=skia:
R=bsalomon@google.com, reed@google.com

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/212103010

git-svn-id: http://skia.googlecode.com/svn/trunk@14297 2bbb7eff-a529-9590-31e7-b0007b416f81
sADashTest.cpp
d37b2a0d99599f8879db7ee1e976d0f970c5be34 21-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14291

Change-Id: I89e013875b39f12ee9bbc9801179e2f2aa5a5ad4
2c4e75cc3c0302e0e151d90c74b4c476bfa8a8b5 21-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove offset to SkMallocPixelRef::NewWithData - use SkData::NewSubset instead.

R=scroggo@google.com, mtklein@google.com, reed@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/243483002

git-svn-id: http://skia.googlecode.com/svn/trunk@14289 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
b8c3d0146f25505f98f5d0944046b183c876b8b0 21-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14288

Change-Id: I52e8b58013a71ae0a106860c94a7c30b86bd00e6
855e88edfafe4b3892e99f932c38fa7433b2fcbe 21-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixes for SkPictureShader.

Update comment in header to make it more clear that the picture
should be unaltered after creating the shader. We want our shaders
to be immutable, and this supports that.

Make the factory return NULL if the shader would have never drawn
anyway i.e. for a null picture or picture with no width/height.

Addresses comments I brought up in
https://codereview.chromium.org/221923007/#msg16.

BUG=skia:1976
R=reed@google.com, fmalita@chromium.org, robertphillips@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/238253005

git-svn-id: http://skia.googlecode.com/svn/trunk@14288 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureShaderTest.cpp
eee215764d4b76d839dfaa8c88b058845d52f27a 21-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14277

Change-Id: Ia1c7535cb11368b5b03e3c7e3fec097ec0b769a6
ad8ce572f69633ffebe2fa486275d82a5e9a71fe 21-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> anticipate more optimizations by renaming some files and methods

also, call the new SkRecordOptimize in bench_playback

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/243243003

git-svn-id: http://skia.googlecode.com/svn/trunk@14277 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordCullingTest.cpp
ecordDrawTest.cpp
b270d0585e88eb60c90226b2fe1a01dfb2e1a97f 19-Apr-2014 Leon Scroggins III <scroggo@google.com> Merge upstream Skia at r14263

Conflicts:
src/effects/gradients/SkLinearGradient.cpp

Change-Id: Ida85a7a7b15d7dfb6bd7abf76e08ad73633cb2ec
33a94e2ba79d41de91d3412d8ae1504c187aacb1 18-Apr-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused fOverflowed from SkClampRange

TBR=scroggo@google.com

Review URL: https://codereview.chromium.org/243563002

git-svn-id: http://skia.googlecode.com/svn/trunk@14260 2bbb7eff-a529-9590-31e7-b0007b416f81
lampRangeTest.cpp
770963f23f4fc313db0fa3bac18b1b8aafb55f17 18-Apr-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Staging for cleanup of SkPicture-related headers

https://codereview.chromium.org/243173002



git-svn-id: http://skia.googlecode.com/svn/trunk@14258 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
mageFilterTest.cpp
ictureTest.cpp
erializationTest.cpp
ileGridTest.cpp
091a594dbc4116ec2e54724432472bf37dae794a 18-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Reduce internal explicit SaveFlags usage.

Most of these are either redundant/defaults or (hopefully)
unnecessarily specific.

R=reed@google.com, robertphillips@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/241453003

git-svn-id: http://skia.googlecode.com/svn/trunk@14253 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
mageFilterTest.cpp
60bd7519a9db4ddddd95e490f93165e5676f90f5 18-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14252 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
5fb2ce38b3dcb8e60e9e112df23c9d42456d7069 18-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Staged removal of SkPicture-derived classes

This CL removes the SkPicture-derived classes (with a flag to keeps clients working). In the process it also lightens the recording factory function so it is no longer ref counted).

The only interesting bits are in SkPicture* and Sk*Picture.*

R=reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/238273012

git-svn-id: http://skia.googlecode.com/svn/trunk@14251 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
mageFilterTest.cpp
ictureTest.cpp
erializationTest.cpp
ileGridTest.cpp
2774d99d4d77313e7e7c2a351eb2cdcc7c62b4c3 17-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14240

Change-Id: I3d6f3d26bccb4fca5c189dd499d82e28cc8000b1
273a00d14f78c34c4654bf6aef3e5bdb7cf105d2 17-Apr-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix expected size in 32bit builds

BUG=skia:

Review URL: https://codereview.chromium.org/240283012

git-svn-id: http://skia.googlecode.com/svn/trunk@14240 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
70899519157b568384cbfb73fb6142314c96669b 17-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14238

Change-Id: I38eaeb366aeb37ff7349112d3ff08abd514d1b80
cc277b729b16c0d8d042f9ae1db6563fb4538d88 17-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Orphan ProcXfermode, with an eye towards removing it

BUG=skia:
R=scroggo@google.com, mtklein@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/240533003

git-svn-id: http://skia.googlecode.com/svn/trunk@14238 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
fermodeTest.cpp
efaf53ba2488dec99f96120e5995e000632f31d2 17-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused tests to fix new clang build

R=mtklein@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/241043002

git-svn-id: http://skia.googlecode.com/svn/trunk@14237 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
03c394d92960ad6e4dca2e986fbd163daa2cd1de 17-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14234

Change-Id: I0c7fb1c9a096788b4ca050c0d62ee62ce986e585
667b98d947892cec939669bccf204ab9ed565c4e 17-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14234 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
16a965b0bdd7a7895f8174cb7925fad2bde13d18 16-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14229

Change-Id: I129baf17a95f7e6475ad72ff0067b4a5031f5d54
45d86e7072cda3b3108a84a033fba98072b12f85 16-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> always store bitfields along with dirty in FlatteningTraits

This allows us to simplify lots of setters in SkPaint, which in the non-android case, could now be just assignments (and therefore inlineable).

R=mtklein@google.com, robertphillips@google.com, tomhudson@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/240273004

git-svn-id: http://skia.googlecode.com/svn/trunk@14229 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
d3b58486e97a677f8da2bb4b73690a4af37368d7 16-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge upstream Skia at r14227.

In addition, this CL merges all of Skia, including files that are not
needed by Android. This greatly simplifies the Skia merging process.

Conflicts:
gyp/common_conditions.gypi
src/effects/gradients/SkLinearGradient.cpp

Change-Id: I7a40eb2b2a6901a1934c868479a7a0ff0c3276d9
39426e2bcc8463b88872d22d6ed2729c68323073 16-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> read/write function_ptrs as just void*, and not as 'array of bytes'

BUG=skia:
R=mtklein@google.com, bungeman@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/240013005

git-svn-id: http://skia.googlecode.com/svn/trunk@14224 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
d393b17cf3427bd6f6255f8670067d9aa529e409 16-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Retract SkPicture::kOptimizeForClippedPlayback_RecordingFlag from public API


This CL sets the stage for retracting the SkPicture::kOptimizeForClippedPlayback_RecordingFlag flag
from the public API (more work needs to be done in Blink & Chrome). In the new world the only way
to set this flag (and thus instantiate an SkPicture-derived
class) is by passing a factory to the SkPictureRecorder class. This is to get all clients always using
factories so that we can then change the factory call used (i.e., so the factory just creates a BBH) and
do away with the SkPicture-derived classes.

BUG=skia:2315
R=reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/239703006

git-svn-id: http://skia.googlecode.com/svn/trunk@14221 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
ictureTest.cpp
ileGridTest.cpp
85faf50875fcf6008880a98aaa05d12ae8dad343 16-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove legacy filter-flags, and store FilterLevel directly

BUG=skia:
R=robertphillips@google.com, humper@google.com, jvanverth@google.com, mtklein@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/239393002

git-svn-id: http://skia.googlecode.com/svn/trunk@14217 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
12a0412a5d27177da145891bcb4f351e2897dbcf 15-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> initialize bounds in this test

BUG=skia:
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/238353007

git-svn-id: http://skia.googlecode.com/svn/trunk@14204 2bbb7eff-a529-9590-31e7-b0007b416f81
ecorderTest.cpp
73cb15351f33459e0c861a96135c634dec77ef9d 15-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make sure SkDrawLooper objects can only be allocated on the heap.

Make constructors of SkLayerDrawLooper and SkBlurDrawLooper non-public.
Remove addLayer* methods from SkLayerDrawLooper. SkLayerDrawLooper::Builder is
used to create new objects.
Provide factory method for creating SkBlurDrawLooper.

BUG=2141
R=scroggo@google.com, reed@google.com, djsollen@google.com

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/232913003

git-svn-id: http://skia.googlecode.com/svn/trunk@14200 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
653d51867c20fc643537e4a0d73178697766ae4a 15-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkRecord bug fixes

Optional arguments to SkCanvas calls leaked refs (but not memory) because we
didn't destruct the optional objects (really, just SkPaint: other optional args
are all POD). This adds Optional and PODArray, where Optional makes sure to
call the destructor.

I overlooked that SkPictureRecord really does call paint.computeFastBounds().
Do the same in SkRecordDraw.

BUG=skia:2378
R=reed@google.com, mtklein@google.com, tomhudson@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/235983015

git-svn-id: http://skia.googlecode.com/svn/trunk@14197 2bbb7eff-a529-9590-31e7-b0007b416f81
ecorderTest.cpp
a1ed7aec95eb8c77d1a39834fea476780007cade 15-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14196 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyTest.cpp
4431e7757cfcb8cfa99535eed0e9f156dabf95c2 14-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Mike R: please sanity check SkPostConfig.h
Mike K: please sanity check Test.cpp and skia_test.cpp

Feel free to look at the rest, but I don't expect any in depth review of path ops innards.

Path Ops first iteration used QuickSort to order segments radiating from an intersection to compute the winding rule.

This revision uses a circular sort instead. Breaking out the circular sort into its own long-lived structure (SkOpAngle) allows doing less work and provides a home for caching additional sorting data.

The circle sort is more stable than the former sort, has a robust ordering and fewer exceptions. It finds unsortable ordering less often. It is less reliant on the initial curve tangent, using convex hulls instead whenever it can.

Additional debug validation makes sure that the computed structures are self-consistent. A new visualization tool helps verify that the angle ordering is correct.

The 70+M tests pass with this change on Windows, Mac, Linux 32 and Linux 64 in debug and release.

R=mtklein@google.com, reed@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/131103009

git-svn-id: http://skia.googlecode.com/svn/trunk@14183 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleIdeas.cpp
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsDebug.cpp
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsInverseTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadParameterizationTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
est.cpp
kia_test.cpp
84b18c7e3e042bf206e1ace3d1b6ea5bb929fe51 13-Apr-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> split SkPictureRecorder out of SkPicture

https://codereview.chromium.org/214953003/



git-svn-id: http://skia.googlecode.com/svn/trunk@14171 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
mageFilterTest.cpp
ayerDrawLooperTest.cpp
ictureTest.cpp
erializationTest.cpp
ileGridTest.cpp
f7efa502d62af80bd15b03e1131603fb6577c3df 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement intra-frame cacheing in image filters.

When image filters are processed within Skia, they simply do
a blind recursion. This has the side-effect of turning the
DAG into a tree. I.e., nodes visited more than once during
the traversal will be processed more than once.

This change implements a very simple cacheing scheme: a
cache is created before traversing the DAG, and handed
into the processing traversal. Before recursing into a child
in SkImageFilter::filterImage(), the cache is checked for a
hit, and early-out is performed. Otherwise, the node is
processed, and its result bitmap and location (offset) are
cached, but only if it contains two or more children and
thus will be visited again during the traversal.

Currently, the child count is approximated with the
refcount. This is good enough in most cases (and exactly
correct for the Chrome use case). We could add an exact
child count to the image filter, but this will require
violating the immutability of image filters slightly in
order to bump the child count as nodes are connected. I
leave it up to the reviewer to decide which is better.

R=reed@google.com

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/230653005

git-svn-id: http://skia.googlecode.com/svn/trunk@14160 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
cae54f1f211e3c293ef9afb968067d06ca0ea23d 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove picture-backed surfaces

BUG=skia:
R=robertphillips@google.com, mtklein@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/233943002

git-svn-id: http://skia.googlecode.com/svn/trunk@14159 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
c4b21e6c03a6cdb03e116b9f510eb10cf8daedb1 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Mark our territory with (C).

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/235253002

git-svn-id: http://skia.googlecode.com/svn/trunk@14158 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordCullingTest.cpp
ecordDrawTest.cpp
ecordTest.cpp
ecorderTest.cpp
ecordingTest.cpp
28fcae2ec77eb16a79e155f8d788b20457f1c951 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)

Reason for revert:
Want to reland the original CL.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, bensong@google.com
TBR=bensong@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/235523003

git-svn-id: http://skia.googlecode.com/svn/trunk@14156 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapTest.cpp
litRowTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
rawBitmapRectTest.cpp
mageDecodingTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
8027cd1ec01f8a15ba0b4365fa3f2d47c16f486e 11-Apr-2014 Leon Scroggins III <scroggo@google.com> Merge upstream Skia at r14149

Also includes a small change in gyp/common_conditions.gypi to remove
duplicate defines SK_GAMMA_EXPONENT and SK_GAMMA_CONTRAST.

Change-Id: I504e5df6c321ee0bfe4a2c96986bcd15877e8e21
96edc2459820f0f60ea9b57959c1e5018ef95e28 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)

Reason for revert:
Chrome's side of define changes not easy to figure out quickly. Reverting this for DEPS roll for now.

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

Review URL: https://codereview.chromium.org/234833003

git-svn-id: http://skia.googlecode.com/svn/trunk@14149 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapTest.cpp
litRowTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
rawBitmapRectTest.cpp
mageDecodingTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
18fd2b923a5060175ab4e446e73a73cba581c20d 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a focused public API for src/record.

BUG=skia:2378
R=reed@google.com, robertphillips@google.com, mtklein@google.com, fmalita@chromium.org

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/233053005

git-svn-id: http://skia.googlecode.com/svn/trunk@14146 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordingTest.cpp
d923288e50b5a69afb0bdd5c161191b24cab8345 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)

Reason for revert:
fixes on the chrome side are landing (brettw), keep fingers crossed.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

Review URL: https://codereview.chromium.org/233813004

git-svn-id: http://skia.googlecode.com/svn/trunk@14145 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapTest.cpp
litRowTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
rawBitmapRectTest.cpp
mageDecodingTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
757ebd20ef284b6428eb9f4b9b69826cc3640a82 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)

Reason for revert:
breaking the Chrome deps roll.
http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

Review URL: https://codereview.chromium.org/234243002

git-svn-id: http://skia.googlecode.com/svn/trunk@14144 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapTest.cpp
litRowTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
rawBitmapRectTest.cpp
mageDecodingTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
55c9b4e9f645bba196b142ae7783ac61822adfd7 10-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cast int to float.

Get rid of warning->error.

TBR=reed@google.com
NOTRY=true
NOTREECHECKS=true

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/233883002

git-svn-id: http://skia.googlecode.com/svn/trunk@14140 2bbb7eff-a529-9590-31e7-b0007b416f81
ayerRasterizerTest.cpp
6573ce70e609f19923cea401d4ca3ea1528a78f1 10-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Create SkLayerRasterizer w/o destroying Builder.

Add a new method to SkLayerRasterizer::Builder that creates a new
SkLayerRasterizer without destroying the Builder. Necessary to
continue to support Android's API.

Also fix a bug where creating a Builder and never calling
detachRasterizer results in not calling the destructor for any SkPaints
in the Builder.

Add tests.

BUG=b/13729784
R=reed@google.com, dominikg@chromium.org

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/233673002

git-svn-id: http://skia.googlecode.com/svn/trunk@14139 2bbb7eff-a529-9590-31e7-b0007b416f81
ayerRasterizerTest.cpp
ff2de7cb94847f7e6ad3f5c0047eb6b4815eee2e 10-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkRecordDraw: don't bother clipping an empty clip down further

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com, fmalita@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/231933003

git-svn-id: http://skia.googlecode.com/svn/trunk@14126 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordDrawTest.cpp
d9ce2be6b24b1c89d13c2edb63c3462b0f5c6aa3 10-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkRecordDraw: skip draw ops when the clip is empty

- Adds tests for SkRecordDraw's two main features: cull- and clip- based skipping.
- Adds full SkCanvas semantic mode to SkRecorder, so it can be used as a target for SkRecordDraw.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/231653002

git-svn-id: http://skia.googlecode.com/svn/trunk@14124 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordCullingTest.cpp
ecordDrawTest.cpp
ecorderTest.cpp
149e9a107c356b0151433fb23c2b1c8d0634947c 09-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename kPMColor_SkColorType to kN32_SkColorType.

The new name better represents what this flag means.

BUG=skia:2384
R=reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/227433009

git-svn-id: http://skia.googlecode.com/svn/trunk@14117 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapTest.cpp
litRowTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
rawBitmapRectTest.cpp
mageDecodingTest.cpp
eadPixelsTest.cpp
erializationTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
ee7b190269e9f247344a61bdde45caa17ad41a51 09-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge upstream Skia at r14106

Change-Id: If34808cc1a6bdc8812dbca68881292aefd5e6a02
e752303ceb34384ab59e52e390a84357d588da71 08-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge upstream Skia at r14100.

Conflicts:
src/ports/SkFontHost_FreeType.cpp

Change-Id: Id53a58f30e6314f746daeb10cb12c994de971a58
e1d94437585dad1c195d7cf095f8a5a8219d196a 09-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14102 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
506db0b7d2905c6bedba9fc5d4aeaf231a9a34ea 09-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkRecord: make culling work if SkRecordAnnotateCullingPairs is called.

- Allow stateful functors; allow visit()/mutate() at a given index; add count().
- Annotate cull push/pop pairs on the PushCull records. (tested)
- Use those annotations to skip ahead in SkRecordDraw. (not yet tested beyond dm --skr)
- Make SkRecordDraw a function, move its implementation to a .cpp.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/229523002

git-svn-id: http://skia.googlecode.com/svn/trunk@14101 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordCullingTest.cpp
ecordTest.cpp
ecorderTest.cpp
9ffa52d98fc216b6766f33ffd0d9f1c3a1acdb2f 08-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> More SkRecord TODOs:

- add basic test for SkRecorder
- rejigger GYPs so that the include dir comes along with the dependency

BUG=skia:2378

Committed: http://code.google.com/p/skia/source/detail?r=14099

NOTRY=true
NOTREECHECKS=true
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/227673011

git-svn-id: http://skia.googlecode.com/svn/trunk@14100 2bbb7eff-a529-9590-31e7-b0007b416f81
ecorderTest.cpp
b73696262c21ec7b020b80bac52812fd7517b7f0 08-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> More SkRecord TODOs:

- add basic test for SkRecorder
- rejigger GYPs so that the include dir comes along with the dependency

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/227673011

git-svn-id: http://skia.googlecode.com/svn/trunk@14099 2bbb7eff-a529-9590-31e7-b0007b416f81
ecorderTest.cpp
066a28d2c19c5d09a7a8f27543a8c171c5816cf5 08-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Start on some unwritten SkRecord TODOs:

- add SK_OVERRIDE for SkCanvas methods in SkRecorder
- start on unit tests, here just for SkRecord itself

BUG=skia:2378
R=fmalita@google.com, mtklein@google.com, fmalita@chromium.org

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/228723003

git-svn-id: http://skia.googlecode.com/svn/trunk@14097 2bbb7eff-a529-9590-31e7-b0007b416f81
ecordTest.cpp
43c27586e8b02243c16649de1cd7d95dcea0a712 08-Apr-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> WIP -- SkFont

BUG=skia:
R=bungeman@google.com, fmalita@chromium.org

Review URL: https://codereview.chromium.org/185293018

git-svn-id: http://skia.googlecode.com/svn/trunk@14090 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
2b4e370a2fe00168838e43f5a78ccc3b371609f5 07-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Convert SkPicture's generation ID to a unique ID

This CL addresses linger code review comments on r14037 (Add generation ID to SkPicture https://codereview.chromium.org/222683002/)

R=reed@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/225283014

git-svn-id: http://skia.googlecode.com/svn/trunk@14079 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
cf2f00872c559c892bb4b466bf678c7667490cce 04-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkDiscardableMemoryPool to abstract class

Motivation - we want to keep our public headers small.

R=scroggo@google.com, reed@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/223403012

git-svn-id: http://skia.googlecode.com/svn/trunk@14063 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
iscardableMemoryPoolTest.cpp
rawBitmapRectTest.cpp
mageCacheTest.cpp
d591b7513fb807b6e399acb18456a6e2fee1fd54 03-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Properly set alpha type in webp decode. (https://codereview.chromium.org/223893002/)

Reason for revert:
Breaks ImageDecoding tests on several platforms.

Original issue's description:
> Properly set alpha type in webp decode.
>
> Also use the newer setConfig function.
>
> Add a test to confirm that we set the alpha type properly.
>
> Add some images with alpha for testing. (These images are also beneficial for the compare_unpremul test, which was previously not meaningful on 100% opaque images.)
>
> All of the added images are in the public domain. They were taken from https://developers.google.com/speed/webp/gallery2:
>
> yellow_rose:
> "Free Stock Photo in High Resolution - Yellow Rose 3 - Flowers"
> Image Author: Jon Sullivan
> This file is in the public domain.
> http://www.public-domain-photos.com/free-stock-photos-4/flowers/yellow-rose-3.jpg
>
> baby_tux:
> "baby tux for my user page"
> Image Author: Fizyplankton
> This file is in the public domain.
> http://www.minecraftwiki.net/images/8/85/Fizyplankton.png
>
> NOTRY=true
>
> Committed: http://code.google.com/p/skia/source/detail?r=14054

R=halcanary@google.com
TBR=halcanary@google.com
NOTREECHECKS=true
NOTRY=true

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/223903008

git-svn-id: http://skia.googlecode.com/svn/trunk@14055 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
a455965d92ea0416df02325bc3b74118115bd9db 03-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Properly set alpha type in webp decode.

Also use the newer setConfig function.

Add a test to confirm that we set the alpha type properly.

Add some images with alpha for testing. (These images are also beneficial for the compare_unpremul test, which was previously not meaningful on 100% opaque images.)

All of the added images are in the public domain. They were taken from https://developers.google.com/speed/webp/gallery2:

yellow_rose:
"Free Stock Photo in High Resolution - Yellow Rose 3 - Flowers"
Image Author: Jon Sullivan
This file is in the public domain.
http://www.public-domain-photos.com/free-stock-photos-4/flowers/yellow-rose-3.jpg

baby_tux:
"baby tux for my user page"
Image Author: Fizyplankton
This file is in the public domain.
http://www.minecraftwiki.net/images/8/85/Fizyplankton.png

NOTRY=true
R=halcanary@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/223893002

git-svn-id: http://skia.googlecode.com/svn/trunk@14054 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
8f34190104d139c64598c334709aacff723c4fc9 28-Mar-2014 Leon Scroggins <scroggo@google.com> Merge upstream Skia at r13977.

Includes cherry-picks from:
https://code.google.com/p/skia/source/detail?r=14009
https://code.google.com/p/skia/source/detail?r=14014

Android.mk and SkUserConfig.h have been generated by
gyp_to_android.py.

SkUserConfig.h was additionally updated to include defines
which are necessary but not generated by gyp_to_android.

SkTemplates.h has been further modified to exclude the use
of numeric_limits.

Merge remote-tracking branch 'upstream/master' into merge

Conflicts:
src/images/SkImageRef.cpp

SkImageRef conflicts because
https://code.google.com/p/skia/source/detail?r=13503 (the correct fix)
was committed to Skia upstream, but it depended on APIs not yet in
Android's version of Skia. So Android got
change id I245eea4f05f402ca24849d5d2fe354c69526d03d. This merge takes
Skia r13503 (plus later fixes).

Requires changes to frameworks/base (I5cdcea827ebff587df0bbddc0965e3e0fbf48002)
and cts (Ia6864326bd582587227ab404dbacb409d7f08016).

Change-Id: I816129d49c0118453222916f3c818eccac33663d
a9157727f7ac11dffe5780a0cfdb6d2bbb179373 03-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14039 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
d5500886a29a20733c559c0167a6ae9946704de2 03-Apr-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add generation ID to SkPicture

https://codereview.chromium.org/222683002/



git-svn-id: http://skia.googlecode.com/svn/trunk@14037 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
d5424a425bc21280afe2161f6ac1e5d9eb97e6b2 02-Apr-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix matrix adjustment passed to filter processing.

When adjusting the CTM for filter use, we were subtracting off the
destination coordinates of the drawDevice() or drawSprite(). This is
not quite correct: we should subtract off the coordinates relative to
the device origin instead. This occurs when one filtered saveLayer() is
drawn inside another saveLayer(), both with non-zero origin.

This fixes layout test svg/batik/text/smallFonts.svg in Blink, and is
exercised by the provided unit test.

BUG=skia:
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/222723002

git-svn-id: http://skia.googlecode.com/svn/trunk@14029 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
55bd940446506f8409f38271f2e4969e9b4f3991 02-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkTDynamicHash: pick up GetKey(), Hash() from T by default.

This also has a somewhat obscure technical benefit: it removes the
requirement that GetKey() and Hash() must be functions with external
linkage, which is required when passing a function pointer to a
template. A future CL that's run into this problem and the obvious
simplification are about 50/50 why I'm sending this CL.

BUG=skia:
DIFFBASE= https://codereview.chromium.org/222343002/
R=bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/222473002

git-svn-id: http://skia.googlecode.com/svn/trunk@14028 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
158f64626f8dae7e8437744184860d0110b88609 02-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkTDynamicHash: remove need for Equals(const T&, const Key&) param.

All implementations are relying on bool operator==(const Key&, const Key&)
anyway, which makes total sense, so just make that required.

BUG=skia:
R=bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/222343002

git-svn-id: http://skia.googlecode.com/svn/trunk@14027 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
ee845ae4940779280a853269d7d797dc9eb89201 01-Apr-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkXfermodeImageFilter when an input is cropped out.

If one of inputs to SkXfermodeImageFilter draws nothing, either due to
it being cropped out upstream, or within the filter itself, the filter
should still draw the other input, since otherwise the result will be incorrect.

For the GPU path, since we can't detect this case in
canFilterImageGPU() without recursing, we'll just drop to
the generic path if either input is empty, since we can't use the effect in that case anyway.

While we're at it, let's drop to the generic path if the
xfermode can't be expressed as an effect, since the code
here was doing a 2-pass render in that case anyway, which
is equivalent to what the (xfermode == NULL) case was doing
anyway.

R=bsalomon@google.com, sugoi@chromium.org

Review URL: https://codereview.chromium.org/220723007

git-svn-id: http://skia.googlecode.com/svn/trunk@14016 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
35c03fbf101306e8e82141853de4c664cbafedbb 31-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove scaleToFit from DashPathEffect

BUG=skia:
R=reed@google.com, bsalomon@google.com, scroggo@google.com

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/216493005

git-svn-id: http://skia.googlecode.com/svn/trunk@13999 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
0e9e6a331394721bdc47607733880d4c67b595dd 28-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Roll back tests/TileGridTest.cpp back to where ASAN was happy.

Revert "Change tilegrid test to test it directly, rather than through SkPicture"
This reverts commit 7ae3bc7ffb3068b0585ad313d5c43ff1aab99737.

Revert "Fix result order reliance"
This reverts commit be4825c873856d8a6a91ea19cf1499da4b0a1fc1.

BUG=skia:2345
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/216793006

git-svn-id: http://skia.googlecode.com/svn/trunk@13981 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
dad009be4ae15cae7b1ae9cecdf816a21bb7c5f9 27-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Making SkDeferredCanvas::silentFlush trigger a skippedPendingDrawCommands callback

The bug was preventing Canvas2DLayerBridge from properly tracking changes
in memory consumption that were triggered by calls to silentFlush.

BUG=344666
TEST=DeferredCanvas unit test
R=senorblanco@google.com, senorblanco@chromium.org

Author: junov@chromium.org

Review URL: https://codereview.chromium.org/214803002

git-svn-id: http://skia.googlecode.com/svn/trunk@13965 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
609e6f98f0e0fb7fa17c1c70a4765edc829c8d50 27-Feb-2014 Leon Scroggins <scroggo@google.com> Merge M34 Skia (13441) into Android.

Also includes a cherry-pick of
https://codereview.chromium.org/169753004/

Merge commit 'a7692a9ac6cb8a0bbe6bbdfc83f86014a7dc265e' into m34

Conflicts:
gyp/tools.gyp
include/core/SkFixed.h
include/core/SkThread_platform.h
include/core/SkUserConfig.h
src/core/SkImageInfo.cpp
src/core/SkMallocPixelRef.cpp
src/core/SkMatrix.cpp
src/effects/SkColorMatrix.cpp
src/ports/SkFontHost_FreeType.cpp
src/ports/SkFontHost_FreeType_common.cpp
tools/PictureRenderer.cpp

Change-Id: I3f2fccbea7dce15066e1beb0d874bafed3047f33
7111d463cee893a479280c7af41757e709e33ef5 25-Mar-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert of implement readPixels and writePixels natively, w/o using the (deprecated) (https://codereview.chromium.org/199733016/)"

This reverts commit 9a90bd16dc6756395c422adf0f24560d033ed9ea.

BUG=skia:
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/211293002

git-svn-id: http://skia.googlecode.com/svn/trunk@13939 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ritePixelsTest.cpp
231f6b81c22001cac4ea87ea412c4d6fd10ffb8a 25-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of implement readPixels and writePixels natively, w/o using the (deprecated) (https://codereview.chromium.org/199733016/)

Reason for revert:
Android bots segfaulting in tests.

Original issue's description:
> implement readPixels and writePixels natively, w/o using the (deprecated)
> SkCanvas::Config8888 enum.
>
> Revert "Revert "hide Config8888 entirely". Broke a bunch of builds."
>
> This reverts commit 763277ba157fef0f651004bb98a189e9f1ac730b.
>
> Needs chrome to remove the READPIXELS guard from skia's .gyp
>
> Committed: https://code.google.com/p/skia/source/detail?r=13931

R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/209233004

git-svn-id: http://skia.googlecode.com/svn/trunk@13932 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ritePixelsTest.cpp
1121170477302e25ef2a020cf2092aa6b399b3ef 25-Mar-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement readPixels and writePixels natively, w/o using the (deprecated)
SkCanvas::Config8888 enum.

Revert "Revert "hide Config8888 entirely". Broke a bunch of builds."

This reverts commit 763277ba157fef0f651004bb98a189e9f1ac730b.

Needs chrome to remove the READPIXELS guard from skia's .gyp

Review URL: https://codereview.chromium.org/199733016

git-svn-id: http://skia.googlecode.com/svn/trunk@13931 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ritePixelsTest.cpp
e8807f49ed24be3933acf84c9ffa840a03fa43dc 25-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkPaint: eliminate some dead bytes in 64-bit build.

+ memcpy-based copy constructor was hiding this gap -> manual copy constructor.
+ Split tests for finer-grained failures.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=13856

Committed: http://code.google.com/p/skia/source/detail?r=13887

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/203203003

git-svn-id: http://skia.googlecode.com/svn/trunk@13927 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
28ae55de3c4ec93516901100df1170048f949dfb 24-Mar-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Mac Debug clang build.

TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/210443002

git-svn-id: http://skia.googlecode.com/svn/trunk@13925 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
09843fd5c15e84e9b14ab511a04d9d639149fa75 24-Mar-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for crash on large image blur sigma values.

This was crashing on the GPU path, due to a failed texture allocation.
The belt-and-suspenders fix is to:

1) Limit the GPU path to only allocate up to maxTextureSize.
2) Limit both the raster and GPU paths to reasonable blur sizes (box blur
kernel size of 1000, resulting in a sigma limit of 532).

R=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/209353014

git-svn-id: http://skia.googlecode.com/svn/trunk@13923 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
61c9b835d13e1d4225f3a04f045658f62c702294 24-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Manual memset to work around bogus compiler warning bug.

BUG=skia:2215
R=bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/210013003

git-svn-id: http://skia.googlecode.com/svn/trunk@13908 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
34ce63ca6b853724c152a116e1467c0eead87003 21-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix incorrect assert in r13895.


git-svn-id: http://skia.googlecode.com/svn/trunk@13896 2bbb7eff-a529-9590-31e7-b0007b416f81
ArrayTest.cpp
95ebd17cf4f66952862289882ee5ac00da31cb8a 21-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add removeShuffle to SkTArray and add SkTArray tests.

R=reed@google.com

Review URL: https://codereview.chromium.org/208153008

git-svn-id: http://skia.googlecode.com/svn/trunk@13895 2bbb7eff-a529-9590-31e7-b0007b416f81
ArrayTest.cpp
99e5b524ced6d299f129bf572960b87579646bb4 21-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13889 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
9206da6c9e7cf7ec6502c52143f57c3998dcf0f6 21-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of SkPaint: eliminate some dead bytes in 64-bit build. (https://codereview.chromium.org/203203003/)

Reason for revert:
Huh, some Android tests are still failing despite the fix. IntelRhB, Xoom... that's weird.

Original issue's description:
> SkPaint: eliminate some dead bytes in 64-bit build.
>
> + memcpy-based copy constructor was hiding this gap -> manual copy constructor.
> + Split tests for finer-grained failures.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=13856
>
> Committed: http://code.google.com/p/skia/source/detail?r=13887

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/206623005

git-svn-id: http://skia.googlecode.com/svn/trunk@13888 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
f48182b1614be99117b65118eefd3cd66e2d1f9a 21-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkPaint: eliminate some dead bytes in 64-bit build.

+ memcpy-based copy constructor was hiding this gap -> manual copy constructor.
+ Split tests for finer-grained failures.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=13856

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/203203003

git-svn-id: http://skia.googlecode.com/svn/trunk@13887 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
180e36abf6e5da1688c9da5ef614a78c471834d5 20-Mar-2014 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "hide Config8888 entirely". Broke a bunch of builds.

This reverts commit fa11c49cc11a6c9ebafbf9c59e118917f9b3cc56.

Revert "Sanitizing source files in Housekeeper-Nightly" to make the above revert clean.

This reverts commit b5787422c8eb2a27a9576777597fd9e06784acdb.

TBR=reed@google.com
TBR=jcgregorio@google.com

Review URL: https://codereview.chromium.org/205963003

git-svn-id: http://skia.googlecode.com/svn/trunk@13872 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
be41d38f1c076c9e4dc595a6e1a4eb5ccdbd307b 20-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13871 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
ritePixelsTest.cpp
e14792d99fc7a1a314ef5e2ca5b269239468355a 19-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> hide Config8888 entirely

BUG=skia:
R=bsalomon@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/203993002

git-svn-id: http://skia.googlecode.com/svn/trunk@13865 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ritePixelsTest.cpp
d8a57af725e8fa8905207df3cf7465be50598752 19-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding a new SkSurface factory for generating surfaces from the scratch texture pool.

TEST=Surface unit test
BUG=crbug.com/351798
R=bsalomon@google.com, robertphillips@google.com, reed@google.com

Author: junov@chromium.org

Review URL: https://codereview.chromium.org/201153023

git-svn-id: http://skia.googlecode.com/svn/trunk@13864 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
fffb2cd4639076b799a68cc0d1fc04d376b1ac3d 19-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of SkPaint: eliminate some dead bytes in 64-bit build. (https://codereview.chromium.org/203203003/)

Reason for revert:
Causing RunTest failures on Android.

Original issue's description:
> SkPaint: eliminate some dead bytes in 64-bit build.
>
> + memcpy-based copy constructor was hiding this gap -> manual copy constructor.
> + Split tests for finer-grained failures.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=13856

R=reed@google.com, mtklein@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, mtklein@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: jcgregorio@google.com

Review URL: https://codereview.chromium.org/204543002

git-svn-id: http://skia.googlecode.com/svn/trunk@13858 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
fa4dc2c4cba94aec91142a24b4dc26c1dde56023 19-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkPaint: eliminate some dead bytes in 64-bit build.

+ memcpy-based copy constructor was hiding this gap -> manual copy constructor.
+ Split tests for finer-grained failures.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/203203003

git-svn-id: http://skia.googlecode.com/svn/trunk@13856 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
70512af9dd7a6b2c0a3f5971fd6e103dc577a400 18-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a means of extracting active operations from SkPicture

For the "pull forward" task I will be comparing the two cases:
analyze the whole skp and use the BBH information
analyze only the active portion of the skp

In the first case we need a way to get the BBH information out of the picture in order to extract the relevant portions of the whole-skp analysis. This adds caching of the active ops so that work isn't duplicated between when the optimization path queries for that information and when the usual draw path queries for it.

Committed: http://code.google.com/p/skia/source/detail?r=13836

R=reed@google.com, bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/195793010

git-svn-id: http://skia.googlecode.com/svn/trunk@13853 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
af5346a39cf2412eeb2da7339a51e44ae68dd677 18-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add reg test for http://crbug.com/348821

BUG=348821
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/189373008

git-svn-id: http://skia.googlecode.com/svn/trunk@13852 2bbb7eff-a529-9590-31e7-b0007b416f81
ashPathEffectTest.cpp
92362383a4de7b0d819c88fa8b74242bb2507602 18-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkCanvas matrix ops return value.

The internal SkMatrix ops can no longer fail -> we can remove the bool
return value.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com, scroggo@google.com, fmalita@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/200223008

git-svn-id: http://skia.googlecode.com/svn/trunk@13849 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
a713f9c6f6a06d216d53e268b9c691941053dabf 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add new readPixels with direct memory parameters

BUG=skia:
R=scroggo@google.com, bsalomon@google.com, robertphillips@google.com, fmalita@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/199413013

git-svn-id: http://skia.googlecode.com/svn/trunk@13840 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
f338d7c860bf0bca82cac793069522311a3dbb1a 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add nine patch type to SkRRect.

BUG=skia:2181

Committed: http://code.google.com/p/skia/source/detail?r=13833

R=robertphillips@google.com, reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/196343015

git-svn-id: http://skia.googlecode.com/svn/trunk@13839 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
bab3fc4c90c4369c5d77d8da86d9f117ee54e0bc 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Add nine patch type to SkRRect. (https://codereview.chromium.org/196343015/)

Reason for revert:
causes tests to have infinite loop

Original issue's description:
> Add nine patch type to SkRRect.
>
> BUG=skia:2181
>
> Committed: http://code.google.com/p/skia/source/detail?r=13833

R=robertphillips@google.com, reed@google.com
TBR=reed@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2181

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/202163004

git-svn-id: http://skia.googlecode.com/svn/trunk@13837 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
761b8e557269bbcd9d8c2030e57666a3d9ccba28 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add nine patch type to SkRRect.

BUG=skia:2181
R=robertphillips@google.com, reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/196343015

git-svn-id: http://skia.googlecode.com/svn/trunk@13833 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
be4825c873856d8a6a91ea19cf1499da4b0a1fc1 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix result order reliance

The old tests presumed result order in a way was safe because SkPicture was sorting the paint calls.
This fixes the tests to not check result ordering, just presence

BUG=skia:
R=robertphillips@google.com

Author: iancottrell@google.com

Review URL: https://codereview.chromium.org/197813011

git-svn-id: http://skia.googlecode.com/svn/trunk@13828 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
7ae3bc7ffb3068b0585ad313d5c43ff1aab99737 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Change tilegrid test to test it directly, rather than through SkPicture
This is necessary because it makes assumptions that picture will draw all the rects that match the grids, which may not hold if picture decides to improve the accuracy of the results.

BUG=skia:2125
R=tomhudson@google.com, mtklein@google.com, reed@google.com

Author: iancottrell@google.com

Review URL: https://codereview.chromium.org/199083004

git-svn-id: http://skia.googlecode.com/svn/trunk@13827 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
949b9986de23993f163a324a1234547dd2d09be7 17-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fast implementation of QuadTree

Rewritten to avoid memory allocations.

BUG=skia:2242
R=tomhudson@google.com, mtklein@google.com, reed@google.com, robertphillips@google.com

Author: iancottrell@google.com

Review URL: https://codereview.chromium.org/187233002

git-svn-id: http://skia.googlecode.com/svn/trunk@13826 2bbb7eff-a529-9590-31e7-b0007b416f81
BoxHierarchyTest.cpp
bjectPoolTest.cpp
ListTest.cpp
1e7ee999d4e89c4270f27c99636b7cdb859b5d58 14-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix a leak

R=sugoi@chromium.org, bungeman@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/195763025

git-svn-id: http://skia.googlecode.com/svn/trunk@13814 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
118252962f89a80db661a0544f1bd61cbaab6321 14-Mar-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for expanding crop rects in image filters

NOTE: this patch set is based on https://codereview.chromium.org/189913021/,
and needs that patch to land first.

Until now, crop rects in Skia have only been able to reduce
the size of the destination bounds, but not expand them.
SVG semantics require the latter as well. The heart of
the change is in applyCropRect(), which now assigns each
edge, instead of doing an intersection with the crop rect.

In order to support this (and still work well with tiled
drawing) we need to clip the resulting crop rect to the
clipping region of the filters. This uses the Context struct
previously landed from https://codereview.chromium.org/189913021/.

Many of the pixel loops are not yet ready to handle a
destination rect larger than the source rect. So we provide
a convenience version of applyCropRect() which creates an
offscreen and pads it out with transparent black. Once the
pixel loops and shaders have been fixed to support larger
destination bounds, they should be switched back to the
non-drawing version of applyCropRect().

BUG=skia:
R=bsalomon@google.com, reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=13805

Review URL: https://codereview.chromium.org/198003008

git-svn-id: http://skia.googlecode.com/svn/trunk@13809 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
4cb543d6057b692e1099e9f115155f0bf323a0c8 14-Mar-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for a Context parameter in image filters

Some upcoming work (support for expanding crop rects) requires
the clip bounds to be available during filter traversal. This change
replaces the SkMatrix parameter in the onFilterImage() traversals
with a Context parameter. It contains the CTM, as well as the clip
bounds.

BUG=skia:
R=reed@google.com

Review URL: https://codereview.chromium.org/189913021

git-svn-id: http://skia.googlecode.com/svn/trunk@13803 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
0f10f7bf1fb43ca6346dc220a076773b1f19a367 13-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow toString capability to be toggled independent of developer mode.

This change is motivated by the desire to see the text information in the debugger when not in developer mode. It is structured so user's can disable it if the capability is not wanted.

R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/197763008

git-svn-id: http://skia.googlecode.com/svn/trunk@13795 2bbb7eff-a529-9590-31e7-b0007b416f81
uickRejectTest.cpp
e5eee5121123b4b878d384413c528b99c2e6c18f 13-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix memory leak introduced in 9e5f85e8

R=sugoi@chromium.org, robertphillips@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/199173002

git-svn-id: http://skia.googlecode.com/svn/trunk@13786 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
affa77db64b75b9d32c7e42282bcc2e4eb2a94c3 13-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13782 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
c30dcb9b128887c7e16afe32fdf35105cc42380b 12-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add capture snapshot as data to SkWriter32, use it to optimise record->playback.
This is a new way of implementing https://codereview.chromium.org/155863005/
It uses copy on write semantics to return a buffer without copying it, so that record -> playback does not need to copy the buffer.

BUG=skia:2125
R=tomhudson@google.com, mtklein@google.com, reed@google.com, iancottrell@chromium.org

Author: iancottrell@google.com

Review URL: https://codereview.chromium.org/167113003

git-svn-id: http://skia.googlecode.com/svn/trunk@13769 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
9e5f85e89d03a850d435fc951e74e9861a0c1bdd 12-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing SkPicture serialization

Fixed a few issues while attempting to use the new
serialization path for SkPicture inside a fuzzer:
- SkReadBuffer and SkValidatingReadBuffer both had a fReader
member instead of sharing the same member, which leads to
problems if a base class function is used
- In SkPicture, a header is now written as a single chunk of
data, so it also has to be read as a single chunk of data
- In the SkPicturePlayback destructor, a bad deserialization
would lead to a crash if we don't safely unref fOpData
- Also in SkPicturePlayback, if we only use a ReadBuffer for
the whole deserialization, additional tags must be added to
parseBufferTag()
- SkValidatingReadBuffer::readBitmap() was broken, but this
path wasn't usen't since the only use case for
SkValidatingReadBuffer is currently image filters and
bitmaps are unflattened as part of the deserialization of
SkBitmapSource
- SkPictureImageFilter was not deserializable. Added it to
SkGlobalInitialization*
- Added a test that exercises the SkPicture serialization /
deserialization code

BUG=skia:
R=senorblanco@google.com, senorblanco@chromium.org, reed@google.com, robertphillips@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/195223003

git-svn-id: http://skia.googlecode.com/svn/trunk@13764 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
79fbb40bca9d815ef79b896b31ba6ee736817e0f 12-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [WIP] Add Context to SkDrawLooper.

SkDrawLooper carries some state during draws. This CL extracts this state into
a separate class Context, which is then passed by the users of SkDrawLooper
into the appropriate methods.
This is a step towards making SkDrawLooper immutable.

BUG=skia:2141
R=scroggo@google.com, reed@google.com, sugoi@google.com

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/155513012

git-svn-id: http://skia.googlecode.com/svn/trunk@13760 2bbb7eff-a529-9590-31e7-b0007b416f81
ayerDrawLooperTest.cpp
uickRejectTest.cpp
b93ba45b58ad24e0e2cb75b842e24ff711c368b0 10-Mar-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> flag to make kClipToLayer_SaveFlag the default behavior

#define SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG to get the old behavior

The goal is to remove the feature of saveLayer that allows the canvas to draw outside of the top-most layer.

R=robertphillips@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/190723004

git-svn-id: http://skia.googlecode.com/svn/trunk@13730 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
cac5fd597f6e2495f50aaa6bcbe3dadc56f0b977 10-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Factory methods for heap-allocated SkImageFilter objects.

This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkImageFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

BUG=skia:2187
R=scroggo@google.com, mtklein@chromium.org, reed@google.com, senorblanco@google.com, senorblanco@chromium.org, bsalomon@google.com, sugoi@chromium.org, zork@chromium.org

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/182983003

git-svn-id: http://skia.googlecode.com/svn/trunk@13718 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
mageFilterTest.cpp
erializationTest.cpp
5c70cdca5efe541b70d010e91607bf8626ea49ca 08-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> hide getTotalClip, so we can eventually remove it
hide getClipType, so we can eventually remove it

patch from issue 189443007

TBR=robertphilips@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/189883010

git-svn-id: http://skia.googlecode.com/svn/trunk@13715 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
e62513fb9274b65bcd9fecf61acc418dd3949df5 08-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13714 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
8c2ee5963505cdbe128f68d67f064a3901d22a3c 07-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Once Chromium starts holding on to paths and we can actually reuse cached path data (e.g., masks & geometry) we will need a way to preserve that reuse in the skps. This CL begins adding that capability. More analysis & profiling needs to be done before it is always enabled.

When enabled it does make the disabled path de-duping test in the Canvas unit test pass.

BUG=skia:507
R=bsalomon@google.com, mtklein@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/190923002

git-svn-id: http://skia.googlecode.com/svn/trunk@13709 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
8eb20cc112c2eefc08f5102bd96f9ae1f75b9e54 07-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove code disabled from writePixels change

These tests were asserting that particular, non-documented, optimizations were taking place
in the deferreddevice. Theese particualr short-cuts are no longer possible given the change
to canvas' writepixels to always require a raw-pointer.

R=junov@google.com
TBR=junov@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/190853002

git-svn-id: http://skia.googlecode.com/svn/trunk@13703 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
4cd9e2169e35cd67ee7358acea6541245e1d1744 07-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkCanvas::writePixels that takes info+pixels directly

add corresponding methods to device (w/ diff name to avoid colliding with exising virtuals)

BUG=skia:
R=bsalomon@google.com, robertphillips@google.com, junov@google.com, junov@chromium.org

Author: reed@google.com

Review URL: https://codereview.chromium.org/180113010

git-svn-id: http://skia.googlecode.com/svn/trunk@13697 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
remulAlphaRoundTripTest.cpp
ritePixelsTest.cpp
a5572e5bb2a2bbeeb59de0741c2527869d365a0c 07-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a class to allocate small objects w/o extra calls to new.

Add SkSmallAllocator, a template for allocating small (as defined by the
instantiation) objects without extra calls to new. Add a helper macro to
make using it simple.

Remove SkTemplatesPriv.h, whose behavior is replaced by SkSmallAllocator.
The old SK_PLACEMENT_NEW had the following drawbacks:
- Easily confused with SkNEW_PLACEMENT.
- Requires passing around lots of void*s along with the storageSize.
- Requires using a separate class for deleting it.
- We had multiple ways Auto objects for deleting in different places.
- It always did a straight heap allocation on Windows, meaning Windows
did not get any advantages from the confusing code.
The new SkSmallAllocator simplifies things:
- It is clear about what it does.
- It takes care of the deletion in one place that is automatically
handled.

Further, the new class can be used to create more than one object. This
is in preparation for BUG=skia:1976, for which we would like to create
a new object without extra heap allocations. The plan is to create both
the blitter and the new object on the stack using the SkSmallAllocator.

Add a new test for SkSmallAllocator.

SkShader.h:
Move the private version of CreateBitmapShader to SkBitmapProcShader
(which already has the implementation) and remove the friend class
(which was only used to call this private function). This allows
SkSmallAllocator to reside in the private src/ directory.

SkBitmapProcShader:
Move CreateBitmapShader and the macro for the storage size here. With
the macro in a (private) header, the (private) headers with function
declarations (which now depend on the storage size used) can see the
macro.
Use SkSmallAllocator in CreateBitmapShader.
Change the macro to kBlitterStorageByteCount, since SkSmallAllocator
takes a byte count as its template parameter.

SkBlitter:
Use the SkSmallAllocator.
Remove Sk3DShader::fKillProc and SkAutoCallProc. Both of their
behaviors have been moved into SkSmallAllocator (SkAutoCallProc was
unnecessary anyway, because the only time we ever used it we also
called detach(), so its auto behavior never happened).
Create the Sk3DShader on the stack, if there's room.
Remove the helper version of Choose, which was unused.

SmallAllocatorTest:
Test for the new class.

The rest:
Use SkSmallAllocator.

BUG=skia:1976
R=reed@google.com, mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/179343005

git-svn-id: http://skia.googlecode.com/svn/trunk@13696 2bbb7eff-a529-9590-31e7-b0007b416f81
mallAllocatorTest.cpp
5bee0543f0a42aff90f725fb313b34ed702f44d8 05-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Give PictureTest more verbose error messages.

Motivation: On an odd build system I'm testing, we're triggering these
errors. More verbose test output will help me diagnose the errors.

R=robertphillips@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/183023014

git-svn-id: http://skia.googlecode.com/svn/trunk@13678 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
0b98f67b9060aee9e8e9ccbde2f58ee982fcec67 05-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix FontMgrTest to allow for unnamed fonts.

Motivation: we are testing on a system without fonts and are falling
back on SkTypeface_Empty.

R=bungeman@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/187933002

git-svn-id: http://skia.googlecode.com/svn/trunk@13675 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
5e4112b33aeecbb773ed4c8e33994dec14becb84 05-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace scaled bitmap if entry already exist in cache.

BUG=skia:2251
R=reed@google.com

Author: reveman@chromium.org

Review URL: https://codereview.chromium.org/185263009

git-svn-id: http://skia.googlecode.com/svn/trunk@13667 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
8ef51b975c2bdb8fa332f091863e5410c18576c7 05-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove deprecated use of bitmap config from tests

BUG=skia:
R=halcanary@google.com, reed@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/184233003

git-svn-id: http://skia.googlecode.com/svn/trunk@13666 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapHasherTest.cpp
litRowTest.cpp
rawTextTest.cpp
ontHostStreamTest.cpp
ixelRefTest.cpp
f1f66c0c8623805fdb88f09c0d87cbdd1745e12b 05-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13665 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
fab349c0bf3a305b7a7388b77bab13b0f7b37393 05-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SK_SUPPORT_DEEPCOPYTO_CONFIG code -- no longer used

R=reed@google.com
TBR=bsalomon@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/183763035

git-svn-id: http://skia.googlecode.com/svn/trunk@13664 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
1f6cf695b30d2a7a4e7f046f04868a6e430b05b0 05-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Counterproposal to 182733007: Add iterator to SkTDynamicHash

BUG=skia:
R=egdaniel@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/177263005

git-svn-id: http://skia.googlecode.com/svn/trunk@13663 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
085a6e476b5bd54d93d002209e6cba078afe3a6b 03-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename test files to end with Test.cpp.

DM builds all of {bench,gm,test}/*.cpp. A Windows build warned us that we were
trying to link typeface.obj twice. This must have something to do with there
existing gm/typeface.cpp and tests/Typeface.cpp. To be safe, make sure tests
have a Test.cpp suffix to disambiguate.

BUG=skia:
R=rmistry@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/185923002

git-svn-id: http://skia.googlecode.com/svn/trunk@13644 2bbb7eff-a529-9590-31e7-b0007b416f81
iscardableMemoryPool.cpp
iscardableMemoryPoolTest.cpp
LInterfaceValidation.cpp
LInterfaceValidationTest.cpp
oUnicode.cpp
oUnicodeTest.cpp
ypeface.cpp
ypefaceTest.cpp
370a89980b2d38a6d01903b484bf404d6c48b496 01-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13634 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
8f90a892c5130d4d26b5588e1ff151d01a40688a 28-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add new onClip* methods to SkCanvas

https://codereview.chromium.org/183453002/



git-svn-id: http://skia.googlecode.com/svn/trunk@13627 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
03fc3b4f67a115e4a7945d173856a6c80b09311e 28-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of r13620 (add new onClip* methods to SkCanvas - https://codereview.chromium.org/183453002/) due to broken Chrome Canary and failing tests.




git-svn-id: http://skia.googlecode.com/svn/trunk@13622 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
392c9be344549e809d0468abafdbeb6e32135bcd 28-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add new onClip* methods to SkCanvas

https://codereview.chromium.org/183453002/



git-svn-id: http://skia.googlecode.com/svn/trunk@13620 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
0e530754d36d942f6408c65cc93ba0a8ccd93610 28-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13619 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
rOrderedSetTest.cpp
3107b6a85eee7914b37382f7145ab658e8c27667 27-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkCanvas::NewRaster factory -- a very common use-case in chrome

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/183533004

git-svn-id: http://skia.googlecode.com/svn/trunk@13617 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
rawPathTest.cpp
4fcc3ca4112754f99a7d94b07e8ebbb0cb8c09ea 27-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GrSet class built on top of RedBlackTree

BUG=skia:
R=bsalomon@google.com

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/176903003

git-svn-id: http://skia.googlecode.com/svn/trunk@13616 2bbb7eff-a529-9590-31e7-b0007b416f81
rOrderedSetTest.cpp
4472301607d74d014e717a6b113c4e53543b831b 27-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13604 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
40ac5e52b8d08e85c269c93076fbd4208650d17f 26-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> BlendTest: implicit casts -> explicit casts

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=13595

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/181503003

git-svn-id: http://skia.googlecode.com/svn/trunk@13602 2bbb7eff-a529-9590-31e7-b0007b416f81
lendTest.cpp
573f8485a630ea859f12bf85bfc3ac3cd1e0fb92 26-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> BlendTest: implicit casts -> explicit casts

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/181503003

git-svn-id: http://skia.googlecode.com/svn/trunk@13595 2bbb7eff-a529-9590-31e7-b0007b416f81
lendTest.cpp
0dc5bd149a8b69e8dc6d3b4713b827659c9b0a6b 26-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Let DM run unit tests.
- refactor GYPs and a few flags
- make GPU tests grab a thread-local GrContextFactory when needed as we do in DM for GMs
- add a few more UI features to make DM more like tests

I believe this makes the program 'tests' obsolete.

It should be somewhat faster to run the two sets together than running the old binaries serially:
- serial: tests 20s (3m18s CPU), dm 21s (3m01s CPU)
- together: 27s (6m21s CPU)

Next up is to incorporate benches. I'm only planning there on a single-pass sanity check, so that won't obsolete the program 'bench' just yet.

Tested: out/Debug/tests && out/Debug/dm && echo ok
BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=13586

R=reed@google.com, bsalomon@google.com, mtklein@google.com, tfarina@chromium.org

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/178273002

git-svn-id: http://skia.googlecode.com/svn/trunk@13592 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
kia_test.cpp
7f428a941b47c88d84da7adb656924245a55f050 25-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Check in today's exhaustive blend experiments.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/179733005

git-svn-id: http://skia.googlecode.com/svn/trunk@13588 2bbb7eff-a529-9590-31e7-b0007b416f81
lendTest.cpp
79e13260cf94427e6ccbfff8242bf85ed4c8187b 25-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Let DM run unit tests. (https://codereview.chromium.org/178273002/)

Reason for revert:
broke tests

Original issue's description:
> Let DM run unit tests.
> - refactor GYPs and a few flags
> - make GPU tests grab a thread-local GrContextFactory when needed as we do in DM for GMs
> - add a few more UI features to make DM more like tests
>
> I believe this makes the program 'tests' obsolete.
>
> It should be somewhat faster to run the two sets together than running the old binaries serially:
> - serial: tests 20s (3m18s CPU), dm 21s (3m01s CPU)
> - together: 27s (6m21s CPU)
>
> Next up is to incorporate benches. I'm only planning there on a single-pass sanity check, so that won't obsolete the program 'bench' just yet.
>
> Tested: out/Debug/tests && out/Debug/dm && echo ok
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=13586

R=bsalomon@google.com, mtklein@google.com, tfarina@chromium.org, mtklein@chromium.org
TBR=bsalomon@google.com, mtklein@chromium.org, mtklein@google.com, tfarina@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@google.com

Review URL: https://codereview.chromium.org/179403010

git-svn-id: http://skia.googlecode.com/svn/trunk@13587 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
kia_test.cpp
6bd250a2a340348434b7b16bd4e4b5da0f598e3e 25-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Let DM run unit tests.
- refactor GYPs and a few flags
- make GPU tests grab a thread-local GrContextFactory when needed as we do in DM for GMs
- add a few more UI features to make DM more like tests

I believe this makes the program 'tests' obsolete.

It should be somewhat faster to run the two sets together than running the old binaries serially:
- serial: tests 20s (3m18s CPU), dm 21s (3m01s CPU)
- together: 27s (6m21s CPU)

Next up is to incorporate benches. I'm only planning there on a single-pass sanity check, so that won't obsolete the program 'bench' just yet.

Tested: out/Debug/tests && out/Debug/dm && echo ok
BUG=skia:
R=reed@google.com, bsalomon@google.com, mtklein@google.com, tfarina@chromium.org

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/178273002

git-svn-id: http://skia.googlecode.com/svn/trunk@13586 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
kia_test.cpp
d5f032d46baa42f836d06d7372fba8f022a20dfa 24-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Do not define SK_SUPPORT_DEEPCOPYTO_CONFIG in Skia.
Clean up our callers who depend on the deprecated function.

R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/178003003

git-svn-id: http://skia.googlecode.com/svn/trunk@13566 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
89f077ced4918ded7e911bc5052b61c90ad57a9a 24-Feb-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix saveLayer() clipping w/filters, GPU path.

Don't modify the clipstack in saveLayer() if the kClipToLayer_SaveFlag is
not set. Without this the GPU path will clip the offscreen to the layer's
bounds, even if the flag is not set.

R=robertphillips@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/164203002

git-svn-id: http://skia.googlecode.com/svn/trunk@13561 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
8a2ad3cae710f05cca57e48dd1732d575dba2dc7 23-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add new copyTo version to SkBitmap, which takes SkColorType

BUG=skia:
R=scroggo@google.com, halcanary@google.com, bsalomon@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/171723007

git-svn-id: http://skia.googlecode.com/svn/trunk@13553 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
4324c3ba707a567d45628b80073c2e44d2d0e4e4 21-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix warnings on Ubuntu13

Turn off warnings when building libwebp.
Turn off warnings when building libjpeg.
Initialize some variables immediately.

NOTRY=True
NOTREECHECKS=True

BUG=skia:2213
BUG=skia:2214
R=bsalomon@google.com, halcanary@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/175383002

git-svn-id: http://skia.googlecode.com/svn/trunk@13545 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
727a352f7412753d2a3e4d30eab6500a1a4de135 21-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Factory methods for heap-allocated SkColorFilter objects.

This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkColorFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

BUG=skia:2187
R=scroggo@google.com, mtklein@google.com, reed@google.com

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/175293002

git-svn-id: http://skia.googlecode.com/svn/trunk@13539 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
mageFilterTest.cpp
aca1c01f3b39a8159a0ca10ba740d9995027317b 21-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Merge tomhudson and mtklein SkPaint shrinking approaches.

I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary.

bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.)
a/b skp before after
0.83 desk_techcrunch.skp 0.29 0.24
0.83 tabl_gamedeksiam.skp 0.52 0.43
0.87 desk_carsvg.skp 0.4 0.35
0.87 desk_googlehome.skp 0.038 0.033
0.87 desk_pokemonwiki.skp 3.9 3.4
0.88 desk_fontwipe.skp 0.0089 0.0078
0.88 desk_googlespreadsheet.skp 0.16 0.14
0.89 desk_jsfiddlebigcar.skp 0.027 0.024
0.89 desk_tigersvg.skp 0.038 0.034
0.89 desk_weather.skp 0.19 0.17
0.89 tabl_engadget.skp 0.37 0.33
0.89 tabl_googleblog.skp 0.28 0.25
0.9 desk_facebook.skp 0.2 0.18
0.91 desk_mapsvg.skp 0.45 0.41
0.91 desk_youtube.skp 0.22 0.2
0.92 desk_forecastio.skp 0.12 0.11
0.92 desk_googlespreadsheetdashed.skp 0.49 0.45
0.92 desk_gws.skp 0.13 0.12
0.92 desk_pinterest.skp 0.037 0.034
0.92 desk_twitter.skp 0.25 0.23
0.92 tabl_culturalsolutions.skp 0.26 0.24
0.92 tabl_gspro.skp 0.072 0.066
0.92 tabl_mercurynews.skp 0.26 0.24
0.93 desk_booking.skp 0.46 0.43
0.93 desk_chalkboard.skp 0.28 0.26
0.93 desk_linkedin.skp 0.14 0.13
0.93 desk_mobilenews.skp 0.28 0.26
0.93 tabl_cuteoverload.skp 0.46 0.43
0.93 tabl_deviantart.skp 0.15 0.14
0.93 tabl_gmail.skp 0.029 0.027
0.93 tabl_googlecalendar.skp 0.15 0.14
0.93 tabl_mlb.skp 0.15 0.14
0.94 desk_blogger.skp 0.18 0.17
0.94 desk_jsfiddlehumperclip.skp 0.034 0.032
0.94 desk_wordpress.skp 0.33 0.31
0.94 desk_wowwiki.skp 0.94 0.88
0.94 desk_yahooanswers.skp 0.17 0.16
0.94 desk_youtubetvvideo.skp 0.017 0.016
0.94 tabl_sahadan.skp 0.093 0.087
0.94 tabl_worldjournal.skp 0.35 0.33
0.95 desk_css3gradients.skp 0.21 0.2
0.95 desk_gmailthread.skp 0.19 0.18
0.95 tabl_cnet.skp 0.42 0.4
0.95 tabl_mozilla.skp 1.9 1.8
0.95 tabl_pravda.skp 0.19 0.18
0.96 mobi_wikipedia.skp 0.55 0.53
0.96 tabl_cnn.skp 0.48 0.46
0.96 tabl_nofolo.skp 0.05 0.048
0.97 desk_googleplus.skp 0.29 0.28
0.97 tabl_frantzen.skp 0.059 0.057
0.97 tabl_onlinewsj.skp 0.38 0.37
0.97 tabl_slashdot.skp 0.1 0.097
0.97 tabl_vnexpress.skp 0.29 0.28
0.99 desk_amazon.skp 0.088 0.087
1 desk_baidu.skp 0.097 0.099
1 desk_ebay.skp 0.18 0.18
1 desk_espn.skp 0.24 0.24
1 desk_oldinboxapp.skp 0.026 0.026
1 desk_rectangletransition.skp 0.014 0.014
1 desk_samoasvg.skp 0.23 0.24
1 desk_yahoogames.skp 0.029 0.029
1 desk_yahoosports.skp 0.0033 0.0033
1 desk_youtubetvbrowse.skp 0.01 0.01
1 tabl_androidpolice.skp 0.65 0.65
1 tabl_digg.skp 0.33 0.33
1 tabl_hsfi.skp 0.32 0.32
1 tabl_nytimes.skp 0.22 0.22
1 tabl_techmeme.skp 0.069 0.072
1 tabl_ukwsj.skp 0.35 0.35
1.1 desk_sfgate.skp 0.25 0.28


BUG=skia:2190,skia:2194

Committed: http://code.google.com/p/skia/source/detail?r=13487

Committed: http://code.google.com/p/skia/source/detail?r=13496

R=tomhudson@google.com, reed@google.com, mtklein@google.com, robertphillips@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/158913005

git-svn-id: http://skia.googlecode.com/svn/trunk@13536 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
0a2bf90dccba3bde188e0386a7f0c60e6dde1ae9 20-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Factory methods for heap-allocated SkPathEffect and SkXfermode objects.

This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkPathEffect, SkXfermode and
their subclasses non-public and instead provides factory methods for
creating these objects on the heap. We temporarily keep the constructors
of the following classes public to not break Chrome/Blink:

SkXfermode
SkCornerPathEffect
SkDashPathEffect

BUG=skia:2187
R=scroggo@google.com, reed@google.com, mtklein@google.com, bungeman@google.com

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/166583002

git-svn-id: http://skia.googlecode.com/svn/trunk@13519 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
fermodeTest.cpp
6285f4f7662853336b788d6ee3e177c396f7fb01 20-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Offer single-param version of deepCopyTo -- much easier to migrate to colortypes

BUG=skia:
R=reed@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/167683006

git-svn-id: http://skia.googlecode.com/svn/trunk@13516 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
ac5004682fde163b09e5ee394cec1732c4d94541 20-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r13496 (Merge tomhudson and mtklein SkPaint shrinking approaches) due to memory leaks



git-svn-id: http://skia.googlecode.com/svn/trunk@13509 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
c05d2859e10f4e1fb0c6486eebfbe88801202648 20-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13508 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
92da60cd6339de32b2d8b19420f511208adf4187 19-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> This CL improves saveLayer handling in the SkMatrixClipStateMgr by:

1) no longer storing the clip skip offsets in the stack (since saveLayers can force multiple clip states to be open at one time)

2) writing out only the clips that are relative to the saveLayer's clip state

3) updates the testing harness to accept a save/restore bracketing a saveLayer/restore (since clips have to be applied to the saveLayer's result upon restore)

R=bsalomon@google.com, epoger@google.com

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/164823003

git-svn-id: http://skia.googlecode.com/svn/trunk@13497 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
cf52f5b7267a1f463d39d58cb6577030acca80df 19-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Merge tomhudson and mtklein SkPaint shrinking approaches.

I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary.

bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.)
a/b skp before after
0.83 desk_techcrunch.skp 0.29 0.24
0.83 tabl_gamedeksiam.skp 0.52 0.43
0.87 desk_carsvg.skp 0.4 0.35
0.87 desk_googlehome.skp 0.038 0.033
0.87 desk_pokemonwiki.skp 3.9 3.4
0.88 desk_fontwipe.skp 0.0089 0.0078
0.88 desk_googlespreadsheet.skp 0.16 0.14
0.89 desk_jsfiddlebigcar.skp 0.027 0.024
0.89 desk_tigersvg.skp 0.038 0.034
0.89 desk_weather.skp 0.19 0.17
0.89 tabl_engadget.skp 0.37 0.33
0.89 tabl_googleblog.skp 0.28 0.25
0.9 desk_facebook.skp 0.2 0.18
0.91 desk_mapsvg.skp 0.45 0.41
0.91 desk_youtube.skp 0.22 0.2
0.92 desk_forecastio.skp 0.12 0.11
0.92 desk_googlespreadsheetdashed.skp 0.49 0.45
0.92 desk_gws.skp 0.13 0.12
0.92 desk_pinterest.skp 0.037 0.034
0.92 desk_twitter.skp 0.25 0.23
0.92 tabl_culturalsolutions.skp 0.26 0.24
0.92 tabl_gspro.skp 0.072 0.066
0.92 tabl_mercurynews.skp 0.26 0.24
0.93 desk_booking.skp 0.46 0.43
0.93 desk_chalkboard.skp 0.28 0.26
0.93 desk_linkedin.skp 0.14 0.13
0.93 desk_mobilenews.skp 0.28 0.26
0.93 tabl_cuteoverload.skp 0.46 0.43
0.93 tabl_deviantart.skp 0.15 0.14
0.93 tabl_gmail.skp 0.029 0.027
0.93 tabl_googlecalendar.skp 0.15 0.14
0.93 tabl_mlb.skp 0.15 0.14
0.94 desk_blogger.skp 0.18 0.17
0.94 desk_jsfiddlehumperclip.skp 0.034 0.032
0.94 desk_wordpress.skp 0.33 0.31
0.94 desk_wowwiki.skp 0.94 0.88
0.94 desk_yahooanswers.skp 0.17 0.16
0.94 desk_youtubetvvideo.skp 0.017 0.016
0.94 tabl_sahadan.skp 0.093 0.087
0.94 tabl_worldjournal.skp 0.35 0.33
0.95 desk_css3gradients.skp 0.21 0.2
0.95 desk_gmailthread.skp 0.19 0.18
0.95 tabl_cnet.skp 0.42 0.4
0.95 tabl_mozilla.skp 1.9 1.8
0.95 tabl_pravda.skp 0.19 0.18
0.96 mobi_wikipedia.skp 0.55 0.53
0.96 tabl_cnn.skp 0.48 0.46
0.96 tabl_nofolo.skp 0.05 0.048
0.97 desk_googleplus.skp 0.29 0.28
0.97 tabl_frantzen.skp 0.059 0.057
0.97 tabl_onlinewsj.skp 0.38 0.37
0.97 tabl_slashdot.skp 0.1 0.097
0.97 tabl_vnexpress.skp 0.29 0.28
0.99 desk_amazon.skp 0.088 0.087
1 desk_baidu.skp 0.097 0.099
1 desk_ebay.skp 0.18 0.18
1 desk_espn.skp 0.24 0.24
1 desk_oldinboxapp.skp 0.026 0.026
1 desk_rectangletransition.skp 0.014 0.014
1 desk_samoasvg.skp 0.23 0.24
1 desk_yahoogames.skp 0.029 0.029
1 desk_yahoosports.skp 0.0033 0.0033
1 desk_youtubetvbrowse.skp 0.01 0.01
1 tabl_androidpolice.skp 0.65 0.65
1 tabl_digg.skp 0.33 0.33
1 tabl_hsfi.skp 0.32 0.32
1 tabl_nytimes.skp 0.22 0.22
1 tabl_techmeme.skp 0.069 0.072
1 tabl_ukwsj.skp 0.35 0.35
1.1 desk_sfgate.skp 0.25 0.28


BUG=skia:2190

Committed: http://code.google.com/p/skia/source/detail?r=13487

R=tomhudson@google.com, reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/158913005

git-svn-id: http://skia.googlecode.com/svn/trunk@13496 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
ead1efb6ba14ecf9c1ef96814b1a5311dc4cc8fb 18-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Merge tomhudson and mtklein SkPaint shrinking approaches. (https://codereview.chromium.org/158913005/)

Reason for revert:
Breaking the build - see https://code.google.com/p/skia/issues/detail?id=2190

Original issue's description:
> Merge tomhudson and mtklein SkPaint shrinking approaches.
>
> I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary.
>
> bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.)
> a/b skp before after
> 0.83 desk_techcrunch.skp 0.29 0.24
> 0.83 tabl_gamedeksiam.skp 0.52 0.43
> 0.87 desk_carsvg.skp 0.4 0.35
> 0.87 desk_googlehome.skp 0.038 0.033
> 0.87 desk_pokemonwiki.skp 3.9 3.4
> 0.88 desk_fontwipe.skp 0.0089 0.0078
> 0.88 desk_googlespreadsheet.skp 0.16 0.14
> 0.89 desk_jsfiddlebigcar.skp 0.027 0.024
> 0.89 desk_tigersvg.skp 0.038 0.034
> 0.89 desk_weather.skp 0.19 0.17
> 0.89 tabl_engadget.skp 0.37 0.33
> 0.89 tabl_googleblog.skp 0.28 0.25
> 0.9 desk_facebook.skp 0.2 0.18
> 0.91 desk_mapsvg.skp 0.45 0.41
> 0.91 desk_youtube.skp 0.22 0.2
> 0.92 desk_forecastio.skp 0.12 0.11
> 0.92 desk_googlespreadsheetdashed.skp 0.49 0.45
> 0.92 desk_gws.skp 0.13 0.12
> 0.92 desk_pinterest.skp 0.037 0.034
> 0.92 desk_twitter.skp 0.25 0.23
> 0.92 tabl_culturalsolutions.skp 0.26 0.24
> 0.92 tabl_gspro.skp 0.072 0.066
> 0.92 tabl_mercurynews.skp 0.26 0.24
> 0.93 desk_booking.skp 0.46 0.43
> 0.93 desk_chalkboard.skp 0.28 0.26
> 0.93 desk_linkedin.skp 0.14 0.13
> 0.93 desk_mobilenews.skp 0.28 0.26
> 0.93 tabl_cuteoverload.skp 0.46 0.43
> 0.93 tabl_deviantart.skp 0.15 0.14
> 0.93 tabl_gmail.skp 0.029 0.027
> 0.93 tabl_googlecalendar.skp 0.15 0.14
> 0.93 tabl_mlb.skp 0.15 0.14
> 0.94 desk_blogger.skp 0.18 0.17
> 0.94 desk_jsfiddlehumperclip.skp 0.034 0.032
> 0.94 desk_wordpress.skp 0.33 0.31
> 0.94 desk_wowwiki.skp 0.94 0.88
> 0.94 desk_yahooanswers.skp 0.17 0.16
> 0.94 desk_youtubetvvideo.skp 0.017 0.016
> 0.94 tabl_sahadan.skp 0.093 0.087
> 0.94 tabl_worldjournal.skp 0.35 0.33
> 0.95 desk_css3gradients.skp 0.21 0.2
> 0.95 desk_gmailthread.skp 0.19 0.18
> 0.95 tabl_cnet.skp 0.42 0.4
> 0.95 tabl_mozilla.skp 1.9 1.8
> 0.95 tabl_pravda.skp 0.19 0.18
> 0.96 mobi_wikipedia.skp 0.55 0.53
> 0.96 tabl_cnn.skp 0.48 0.46
> 0.96 tabl_nofolo.skp 0.05 0.048
> 0.97 desk_googleplus.skp 0.29 0.28
> 0.97 tabl_frantzen.skp 0.059 0.057
> 0.97 tabl_onlinewsj.skp 0.38 0.37
> 0.97 tabl_slashdot.skp 0.1 0.097
> 0.97 tabl_vnexpress.skp 0.29 0.28
> 0.99 desk_amazon.skp 0.088 0.087
> 1 desk_baidu.skp 0.097 0.099
> 1 desk_ebay.skp 0.18 0.18
> 1 desk_espn.skp 0.24 0.24
> 1 desk_oldinboxapp.skp 0.026 0.026
> 1 desk_rectangletransition.skp 0.014 0.014
> 1 desk_samoasvg.skp 0.23 0.24
> 1 desk_yahoogames.skp 0.029 0.029
> 1 desk_yahoosports.skp 0.0033 0.0033
> 1 desk_youtubetvbrowse.skp 0.01 0.01
> 1 tabl_androidpolice.skp 0.65 0.65
> 1 tabl_digg.skp 0.33 0.33
> 1 tabl_hsfi.skp 0.32 0.32
> 1 tabl_nytimes.skp 0.22 0.22
> 1 tabl_techmeme.skp 0.069 0.072
> 1 tabl_ukwsj.skp 0.35 0.35
> 1.1 desk_sfgate.skp 0.25 0.28
>
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=13487

R=tomhudson@google.com, reed@google.com, mtklein@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, mtklein@google.com, reed@google.com, tomhudson@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/169183003

git-svn-id: http://skia.googlecode.com/svn/trunk@13491 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
1cb6d1a1fd11b23aca42dcb8453e6816836b7b6f 18-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert changes which were breaking the build.

Revert "Improve saveLayer handling in SkMatrixClipStateMgr"

This reverts commit f7d08ed626a4825317405c3708cf2896509209d6.

Revert "Compile fix for r13488 (Improve saveLayer handling in SkMatrixClipStateMgr)"

This reverts commit a48822f3ebe86056afc76c96da73c950c80c686a.

R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=True

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/170973002

git-svn-id: http://skia.googlecode.com/svn/trunk@13490 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
f7d08ed626a4825317405c3708cf2896509209d6 18-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve saveLayer handling in SkMatrixClipStateMgr

https://codereview.chromium.org/164823003/



git-svn-id: http://skia.googlecode.com/svn/trunk@13488 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
d01754255188acd45e119882d32ba50e5439c560 18-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Merge tomhudson and mtklein SkPaint shrinking approaches.

I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary.

bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.)
a/b skp before after
0.83 desk_techcrunch.skp 0.29 0.24
0.83 tabl_gamedeksiam.skp 0.52 0.43
0.87 desk_carsvg.skp 0.4 0.35
0.87 desk_googlehome.skp 0.038 0.033
0.87 desk_pokemonwiki.skp 3.9 3.4
0.88 desk_fontwipe.skp 0.0089 0.0078
0.88 desk_googlespreadsheet.skp 0.16 0.14
0.89 desk_jsfiddlebigcar.skp 0.027 0.024
0.89 desk_tigersvg.skp 0.038 0.034
0.89 desk_weather.skp 0.19 0.17
0.89 tabl_engadget.skp 0.37 0.33
0.89 tabl_googleblog.skp 0.28 0.25
0.9 desk_facebook.skp 0.2 0.18
0.91 desk_mapsvg.skp 0.45 0.41
0.91 desk_youtube.skp 0.22 0.2
0.92 desk_forecastio.skp 0.12 0.11
0.92 desk_googlespreadsheetdashed.skp 0.49 0.45
0.92 desk_gws.skp 0.13 0.12
0.92 desk_pinterest.skp 0.037 0.034
0.92 desk_twitter.skp 0.25 0.23
0.92 tabl_culturalsolutions.skp 0.26 0.24
0.92 tabl_gspro.skp 0.072 0.066
0.92 tabl_mercurynews.skp 0.26 0.24
0.93 desk_booking.skp 0.46 0.43
0.93 desk_chalkboard.skp 0.28 0.26
0.93 desk_linkedin.skp 0.14 0.13
0.93 desk_mobilenews.skp 0.28 0.26
0.93 tabl_cuteoverload.skp 0.46 0.43
0.93 tabl_deviantart.skp 0.15 0.14
0.93 tabl_gmail.skp 0.029 0.027
0.93 tabl_googlecalendar.skp 0.15 0.14
0.93 tabl_mlb.skp 0.15 0.14
0.94 desk_blogger.skp 0.18 0.17
0.94 desk_jsfiddlehumperclip.skp 0.034 0.032
0.94 desk_wordpress.skp 0.33 0.31
0.94 desk_wowwiki.skp 0.94 0.88
0.94 desk_yahooanswers.skp 0.17 0.16
0.94 desk_youtubetvvideo.skp 0.017 0.016
0.94 tabl_sahadan.skp 0.093 0.087
0.94 tabl_worldjournal.skp 0.35 0.33
0.95 desk_css3gradients.skp 0.21 0.2
0.95 desk_gmailthread.skp 0.19 0.18
0.95 tabl_cnet.skp 0.42 0.4
0.95 tabl_mozilla.skp 1.9 1.8
0.95 tabl_pravda.skp 0.19 0.18
0.96 mobi_wikipedia.skp 0.55 0.53
0.96 tabl_cnn.skp 0.48 0.46
0.96 tabl_nofolo.skp 0.05 0.048
0.97 desk_googleplus.skp 0.29 0.28
0.97 tabl_frantzen.skp 0.059 0.057
0.97 tabl_onlinewsj.skp 0.38 0.37
0.97 tabl_slashdot.skp 0.1 0.097
0.97 tabl_vnexpress.skp 0.29 0.28
0.99 desk_amazon.skp 0.088 0.087
1 desk_baidu.skp 0.097 0.099
1 desk_ebay.skp 0.18 0.18
1 desk_espn.skp 0.24 0.24
1 desk_oldinboxapp.skp 0.026 0.026
1 desk_rectangletransition.skp 0.014 0.014
1 desk_samoasvg.skp 0.23 0.24
1 desk_yahoogames.skp 0.029 0.029
1 desk_yahoosports.skp 0.0033 0.0033
1 desk_youtubetvbrowse.skp 0.01 0.01
1 tabl_androidpolice.skp 0.65 0.65
1 tabl_digg.skp 0.33 0.33
1 tabl_hsfi.skp 0.32 0.32
1 tabl_nytimes.skp 0.22 0.22
1 tabl_techmeme.skp 0.069 0.072
1 tabl_ukwsj.skp 0.35 0.35
1.1 desk_sfgate.skp 0.25 0.28


BUG=skia:
R=tomhudson@google.com, reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/158913005

git-svn-id: http://skia.googlecode.com/svn/trunk@13487 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
186c0ccac25229534ec6fb84726043083304d4d1 18-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> staticMethod -> StaticMethod

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/166193006

git-svn-id: http://skia.googlecode.com/svn/trunk@13485 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHeapTest.cpp
latDataTest.cpp
2c56cb858f9227599746828d1a06b1b1588b44f0 17-Feb-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use factories instead of directly creating SkImageInfo.

R=reed@google.com

Review URL: https://codereview.chromium.org/169363007

git-svn-id: http://skia.googlecode.com/svn/trunk@13480 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
e5b2af955b7d06815ddd405659ad62a2a8355ca3 16-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Store SkRRects in SkClipStack

BUG=skia:2181
R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/163683002

git-svn-id: http://skia.googlecode.com/svn/trunk@13465 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
lipStackTest.cpp
15a140599942f70e47380e3f700a825c7cece3b4 16-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Change device factories to take SkImageInfo instead of SkBitmap::Config

patch from issue 167033002

BUG=skia:
R=reed@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/168653002

git-svn-id: http://skia.googlecode.com/svn/trunk@13463 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
puBitmapCopyTest.cpp
mageFilterTest.cpp
ayerDrawLooperTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
7fac71870231363851fa272f018f6bf11c4518ae 14-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix valgrind suppressions (again)

https://codereview.chromium.org/166193003/



git-svn-id: http://skia.googlecode.com/svn/trunk@13449 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
74ba2f62dce1998bd6555291ab0a5330c276301d 14-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Builder class for SkLayerDrawLooper.

SkLayerDrawLooper provides methods like addLayer() to build up a linked list
of layers. Working towards making this class immutable, this patch introduces
the SkLayerDrawLooperBuilder class which is used to accumulate all the layers
first. Once all layers are in place, it creates a new SkLayerDrawLooper object
and hands over the list of layers to that object.

For now we keep the addLayer methods in SkLayerDrawLooper so we don't break
Chrome and Blink when this is landed. Once we've updated all users, we can
remove the methods.

BUG=skia:2141
R=reed@google.com, scroggo@google.com, mtklein@google.com, reed@chromium.org

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/133813005

git-svn-id: http://skia.googlecode.com/svn/trunk@13448 2bbb7eff-a529-9590-31e7-b0007b416f81
ayerDrawLooperTest.cpp
02d6f546161e2c98d69066373cec3f54f3c46252 14-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13447 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
kpSkGrTest.cpp
urfaceTest.cpp
fa9e5fa42a555712fb7a29d08d2ae2bdef0ed68e 13-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> replace setConfig+allocPixels with alloc-or-install-pixels

BUG=skia:
R=scroggo@google.com, halcanary@google.com, reed@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/164203003

git-svn-id: http://skia.googlecode.com/svn/trunk@13442 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
nnotationTest.cpp
itmapHeapTest.cpp
itmapTest.cpp
litRowTest.cpp
lurTest.cpp
anvasStateTest.cpp
anvasTest.cpp
lipCubicTest.cpp
lipperTest.cpp
eferredCanvasTest.cpp
eviceLooperTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
eadPixelsTest.cpp
ritePixelsTest.cpp
c3bd8af6d5722e854feca70c40d92f4954c5b67b 13-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add peekPixels to SkCanvas and SkSurface

fix reference to SkBaseDevice, which was only a problem in no-gpu build

This reverts commit 4fa44a6bf73891b21917fb90d02beef9143bffa3.

R=reed@google.com

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/163603003

git-svn-id: http://skia.googlecode.com/svn/trunk@13432 2bbb7eff-a529-9590-31e7-b0007b416f81
kpSkGrTest.cpp
urfaceTest.cpp
ea7d08e3bbc45a0a573c1ac06afa4452f8d7000a 13-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add unit test for unbalanced save and restores in pictures.

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/150653010

git-svn-id: http://skia.googlecode.com/svn/trunk@13430 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
bda591c739001b41d77048d680f81e05723cbc05 13-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of add peekPixels to SkCanvas and SkSurface (https://codereview.chromium.org/161733002/)

Reason for revert:
compile issues with gm/xfermodes3

Original issue's description:
> add peekPixels to SkCanvas and SkSurface
>
> clone of https://codereview.chromium.org/159723006/
>
> Committed: https://code.google.com/p/skia/source/detail?r=13427

R=jvanverth@google.com
NOTREECHECKS=true
NOTRY=true

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/163823002

git-svn-id: http://skia.googlecode.com/svn/trunk@13428 2bbb7eff-a529-9590-31e7-b0007b416f81
kpSkGrTest.cpp
urfaceTest.cpp
b2d93a91222dac2edb3c19128fd58fa2e74272aa 13-Feb-2014 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add peekPixels to SkCanvas and SkSurface

clone of https://codereview.chromium.org/159723006/

Review URL: https://codereview.chromium.org/161733002

git-svn-id: http://skia.googlecode.com/svn/trunk@13427 2bbb7eff-a529-9590-31e7-b0007b416f81
kpSkGrTest.cpp
urfaceTest.cpp
deee496cd30070e52556dcb538c2e5eb39b66b81 13-Feb-2014 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> replace setConfig+allocPixels with single call

BUG=skia:

Review URL: https://codereview.chromium.org/162643002

git-svn-id: http://skia.googlecode.com/svn/trunk@13426 2bbb7eff-a529-9590-31e7-b0007b416f81
mptyPathTest.cpp
latDataTest.cpp
radientTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
mageFilterTest.cpp
ipMapTest.cpp
DFPrimitivesTest.cpp
athOpsExtendedTest.cpp
athOpsSkpClipTest.cpp
athUtilsTest.cpp
ictureTest.cpp
ipeTest.cpp
remulAlphaRoundTripTest.cpp
uickRejectTest.cpp
esourceCacheTest.cpp
erializationTest.cpp
haderImageFilterTest.cpp
haderOpacityTest.cpp
kpSkGrTest.cpp
urfaceTest.cpp
ileGridTest.cpp
877c44956dceff038c0e315c8d311b0d581f2680 12-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13418 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
536ac5e20c2ec2008993c0677ba8cbc5ae0f34cf 11-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Templetized SkWriter32 readTAt() & overwriteTAt()

Convert SkWriter32::{read,write}32At() to ::{read,overwrite}TAt<>() to allow
peeking/updating arbitrary records.


BUG=skia:
R=mtklein@google.com, reed@google.com, robertphillips@google.com, iancottrell@chromium.org

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/130913018

git-svn-id: http://skia.googlecode.com/svn/trunk@13416 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
14747e58f8127a6d6b3c748bf0642b0d6a3a79e8 11-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding new 'extend' mode to SkPath::addPath

BUG=261727
R=reed@google.com, caryclark@google.com, schenney@chromium.org, robertphillips@google.com

Author: junov@chromium.org

Review URL: https://codereview.chromium.org/151353006

git-svn-id: http://skia.googlecode.com/svn/trunk@13415 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
61e96cd44624c9faceb625519c1b29775b161f45 11-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkBitmap now really stores SkImageInfo -- config is just a ruse

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/159653004

git-svn-id: http://skia.googlecode.com/svn/trunk@13411 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
ixelRefTest.cpp
dd31ac470b1487a75105448e0030979458db561d 11-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix valgrind suppressions

https://codereview.chromium.org/158493004/



git-svn-id: http://skia.googlecode.com/svn/trunk@13403 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
105a4a584c4c2c84c24e102112326b15683673f5 11-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Collapse matrix & clip stack in PictureRecord

https://codereview.chromium.org/137093004/



git-svn-id: http://skia.googlecode.com/svn/trunk@13402 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
afe38b16f082c8d88039339591376be54c7e801b 11-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix broken debug build

BUG=skia:
R=tomhudson@google.com

Author: iancottrell@google.com

Review URL: https://codereview.chromium.org/143223005

git-svn-id: http://skia.googlecode.com/svn/trunk@13397 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
1195a28892d37ae9632e81e1bc2407cf644522d2 11-Feb-2014 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "SkBitmap now really stores SkImageInfo -- config is just a ruse"

BUG=skia:

Review URL: https://codereview.chromium.org/147733004

git-svn-id: http://skia.googlecode.com/svn/trunk@13395 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
169a0ed50a5e451711c341795572e7177a540a24 11-Feb-2014 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkBitmap now really stores SkImageInfo -- config is just a ruse

(edited) clone of https://codereview.chromium.org/159173004/

Review URL: https://codereview.chromium.org/159463003

git-svn-id: http://skia.googlecode.com/svn/trunk@13391 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
7e90e8dbb96f2084f7dd4a6a20cb4b880b362438 11-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix minor error between kStroke_PathAsRect and kFill_PathAsRect in SkPath::asRect

R=caryclark@google.com, reed@google.com

Author: yunchao.he@intel.com

Review URL: https://codereview.chromium.org/138703008

git-svn-id: http://skia.googlecode.com/svn/trunk@13390 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
6d254ee4aceabb7aeb86c5615139676dfe224a89 10-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkToBool to fix a warning.

NOTRY=true
TBR=djsollen@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/159333002

git-svn-id: http://skia.googlecode.com/svn/trunk@13389 2bbb7eff-a529-9590-31e7-b0007b416f81
rontBufferedStreamTest.cpp
74b88b70b8f78e09d223e3f8357e18e6043fa3aa 10-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow buffered stream to work with an offset.

If the stream being buffered is buffered from somewhere other than
the start, the SkFrontBufferedStream needs to take that into account
when reporting its length.

R=djsollen@google.com, bungeman@google.com, reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/157103002

git-svn-id: http://skia.googlecode.com/svn/trunk@13388 2bbb7eff-a529-9590-31e7-b0007b416f81
rontBufferedStreamTest.cpp
50b393a768c0311b3210f723325fd27bf161136b 10-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkPictureRecord: silently do nothing for non-drawable SkBitmaps.


BUG=skia:2135
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/154083004

git-svn-id: http://skia.googlecode.com/svn/trunk@13386 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
5e0995e4b36178e1e4465a9f50114ed39f038c27 07-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert "Serialization of SkPictureImageFilter" (https://codereview.chromium.org/153583007/)

Reason for revert:
New SKPs with version20 are in Google Storage due to http://108.170.219.160:10117/builders/Housekeeper-Nightly-RecreateSKPs/builds/22

Original issue's description:
> Revert "Serialization of SkPictureImageFilter"
>
> This reverts commit 227321b30106e57942929eb96fa5bc22544f6c9e.
>
> Revert "Sanitizing source files in Housekeeper-Nightly"
>
> This reverts commit baf28584b7636c01355f8d8d972e06aa7fb66d77.
>
> TBR=robertphillips@google.com,sugoi@google.com
>
> Committed: https://code.google.com/p/skia/source/detail?r=13356

R=robertphillips@google.com, sugoi@google.com, fmalita@google.com, fmalita@chromium.org
TBR=fmalita@chromium.org, fmalita@google.com, robertphillips@google.com, sugoi@google.com
NOTREECHECKS=true
NOTRY=true

Author: rmistry@google.com

Review URL: https://codereview.chromium.org/143163005

git-svn-id: http://skia.googlecode.com/svn/trunk@13357 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
urfaceTest.cpp
7713c38dc0182c8f6a685dace5101c49301de00d 07-Feb-2014 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Serialization of SkPictureImageFilter"

This reverts commit 227321b30106e57942929eb96fa5bc22544f6c9e.

Revert "Sanitizing source files in Housekeeper-Nightly"

This reverts commit baf28584b7636c01355f8d8d972e06aa7fb66d77.

TBR=robertphillips@google.com,sugoi@google.com

Review URL: https://codereview.chromium.org/153583007

git-svn-id: http://skia.googlecode.com/svn/trunk@13356 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
urfaceTest.cpp
c5acc6c827993602eded2d5b53fdbe29a372b4c4 07-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13355 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
urfaceTest.cpp
940e3bac13291d95ffa811b233329196335fb3f4 06-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added newline at end of MatrixClipCollapseTest.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@13342 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
1f71846e5c0ee85bb4e4c2b42044eefdebbcf2df 06-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add test harness for matrix/clip state collapsing

https://codereview.chromium.org/133003006/



git-svn-id: http://skia.googlecode.com/svn/trunk@13340 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixClipCollapseTest.cpp
4f7c61583b16e3056cf3350fcef42dcc6d3483b7 06-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add ways to peer into an image to get its pixels

BUG=skia:
R=bsalomon@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/155763004

git-svn-id: http://skia.googlecode.com/svn/trunk@13339 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
999da9c5e45fb533efe8782c9096794b9ad1c1b3 06-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix refcounting in SkImage::NewRasterData

git-svn-id: http://skia.googlecode.com/svn/trunk@13338 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
0937335e6b051150e9a42fc685659bac570b0c51 06-Feb-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Mid-air collision: fix constness for onFilterImage in new test.

TBR=fmalita
BUG=skia:

Review URL: https://codereview.chromium.org/151323003

git-svn-id: http://skia.googlecode.com/svn/trunk@13332 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
5251e2b91ac976f61e6252d931c1a0e746d2290a 05-Feb-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a problem with scaled filters in tiled SkPicture playback.

The matrix used during filter application should be up-to-date, so that
the filter parameters can be scaled by the CTM (e.g., for hiDPI).
However, tiled playback defers setting of the matrix until after the
restore() call which draws the filter, which is too late. Moving the
setMatrix() ahead of the restore() sequence fixes the problem.

TEST=ImageFilterMatrixTest
R=junov@chromium.org

Review URL: https://codereview.chromium.org/145723007

git-svn-id: http://skia.googlecode.com/svn/trunk@13331 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
8a13588b6f41ba892bcf6e8ceef6b449c4a5d83d 05-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Stop discarding in frag shader when coverage is zero and stencil writes are enabled

This fixes the corruption in the NVPR images here:
http://108.170.217.252:10117/builders/Test-Win8-ShuttleA-GTX660-x86-Debug/builds/251/steps/CompareGMs/logs/stdio

caused by:

https://skia.googlesource.com/skia.git/+/65ee5f424cb4dabd453268902c00086605d77c1d

The stencil path step writes inside and outside the clip when the clip is implemented by
a coverage effect. The path cover step then doesn't write outside of the clip because the FS
discards. This leaves stencil values outside of the clip non-zero which messed up subsequent
path or clip draws to those samples.

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/154623002

git-svn-id: http://skia.googlecode.com/svn/trunk@13320 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
76f10a3bd936af7dbe2b5873d5a7eedd73cdc5da 05-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkCanvas::createCompatibleDevice, and add SkCanvas::newSurface

BUG=skia:
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/154163002

git-svn-id: http://skia.googlecode.com/svn/trunk@13319 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
1dab403e447f4f663690e018651338304fe6e86a 05-Feb-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13316 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
65ee5f424cb4dabd453268902c00086605d77c1d 04-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use GrConvexPolyEffect when clip is a single convex polygon

BUG=skia:2051

Committed: http://code.google.com/p/skia/source/detail?r=13286

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/151523005

git-svn-id: http://skia.googlecode.com/svn/trunk@13306 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
d52a99703bd8dcc2567fbe5f8c18d408c15ab7d7 04-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix int->scalar warning

git-svn-id: http://skia.googlecode.com/svn/trunk@13305 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
28183b4043a969df12592e8dd47cf95b80755284 04-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove (unused by chrome) SkDeferredCanvas(device) factory signature

BUG=skia:
R=junov@chromium.org

Review URL: https://codereview.chromium.org/136753016

git-svn-id: http://skia.googlecode.com/svn/trunk@13302 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
f4e1a7614da0cc3738077a1df5d8895a4df6d2f6 04-Feb-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> More bot whack-a-mole: fix Win build.

BUG=skia:
TBR=fmalita@chromium.org

Review URL: https://codereview.chromium.org/146073006

git-svn-id: http://skia.googlecode.com/svn/trunk@13295 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
ec7c35d01501484fed63a9d50832e4fbcfac108d 04-Feb-2014 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Speculative build fix after r13292.

TBR=senorblanco@chromium.org

Review URL: https://codereview.chromium.org/153213002

git-svn-id: http://skia.googlecode.com/svn/trunk@13294 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
58d1466c7773984b7ce4bd75ebf7c97cd42f7d12 03-Feb-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix skia_gpu=0 build.

BUG=skia:
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/132503006

git-svn-id: http://skia.googlecode.com/svn/trunk@13293 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
aba651c3f1a1657bbe5367c873500e7c60539a3e 03-Feb-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix image filter crop offsets for GPU path.

This is the GPU-side version of
https://codereview.chromium.org/112803004/.
Also factored the crop offset unit test into a function, so we can
call it with both CPU & GPU devices.

R=bsalomon@google.com

Review URL: https://codereview.chromium.org/153113003

git-svn-id: http://skia.googlecode.com/svn/trunk@13292 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
c22d1398089fdb95480fb3459b23e4931e4f5280 03-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial QuadTree implementation

In an effort to find a faster bounding box hierarchy than the R-Tree, a QuadTree has been implemented here.
For now, the QuadTree construction is generally faster than the R-Tree and the queries are a bit slower, so overall, SKP local tests showed QuadTree performance similar to the R-Tree performance.

Tests and bench are included in this cl.

At this point, I'd like to be able to commit this in order to more easily use the bots to test multiple configurations and a larger number of SKPs. The R-Tree BBH is still used by default so this change shouldn't affect chromium.

BUG=skia:
R=junov@chromium.org, junov@google.com, senorblanco@google.com, senorblanco@chromium.org, reed@google.com, sugoi@google.com, fmalita@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/131343011

git-svn-id: http://skia.googlecode.com/svn/trunk@13282 2bbb7eff-a529-9590-31e7-b0007b416f81
BoxHierarchyTest.cpp
7017288811091427c15da5f97a14ac85a6585ec4 01-Feb-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix valgrind issue in SkBase64Test.cpp

https://codereview.chromium.org/152153002/



git-svn-id: http://skia.googlecode.com/svn/trunk@13276 2bbb7eff-a529-9590-31e7-b0007b416f81
kBase64Test.cpp
bbff20855ff28d377e9ca2e76bd35810ea46994d 31-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Split GrUnitTests.cpp into two separate unit tests.

GrUnitTests is too generic. Instead we split this file between the two
APIs being tested there, GrTBSearch and GrBinHashKey.

BUG=None
TEST=tests -m GrTBSearchTest && tests -m GrBinHashKeyTest
R=brian@thesalomons.net, robertphillips@google.com

Review URL: https://codereview.chromium.org/150943002

git-svn-id: http://skia.googlecode.com/svn/trunk@13273 2bbb7eff-a529-9590-31e7-b0007b416f81
rBinHashKeyTest.cpp
rTBSearchTest.cpp
rUnitTests.cpp
e254310a55d55a710309714c48f7fbbe7a6126f7 31-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkCanvas constructor that explicitly creates no_config with dimensions

BUG=skia:
R=scroggo@google.com, halcanary@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/137833016

git-svn-id: http://skia.googlecode.com/svn/trunk@13272 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
c6d3c444ca76feba5a8937dbc80626ade5347275 31-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Have peek32 return uint32_t& to make it harder to look at more than 4 bytes.

BUG=skia:
R=reed@google.com, robertphillips@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/145053003

git-svn-id: http://skia.googlecode.com/svn/trunk@13265 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
6169f2b4da39099b4e593f5ff85538dfe2f0249e 31-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> initial import of Chrome's trace_event into skia framework

This patch includes a modified version of Chrome's trace_event.h, which provides
tracing macros that can easily integrate into the about://tracing framework.

Currently the macros link to a default implementation of the (narrow) tracing
class SkDefaultEventTracer which does nothing; next step will be to have Chrome
subclass the SkEventTracer with a shim that bolts Skia's trace events to its own,
allowing Skia's trace events to show up in about://tracing.

I've verified that this file builds properly, and when I added a simple scoped
TRACE_EVENT0 to SkCanvas::drawRect, along with some debug prints in the NOP
implementation of tracing, I saw what I expected printed to the screen.

BUG=skia:
R=nduca@chromium.org, reed@google.com, mtklein@google.com, bsalomon@google.com

Author: humper@google.com

Review URL: https://codereview.chromium.org/149563004

git-svn-id: http://skia.googlecode.com/svn/trunk@13256 2bbb7eff-a529-9590-31e7-b0007b416f81
racingTest.cpp
ceddfeb2af574d0a5273fa1803274d25eca73544 30-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port SkBase64 test to our test driver.

BUG=None
TESTS=tests --match SkBase64Test
R=mtklein@google.com, reed@google.com

Review URL: https://codereview.chromium.org/132233060

git-svn-id: http://skia.googlecode.com/svn/trunk@13254 2bbb7eff-a529-9590-31e7-b0007b416f81
kBase64Test.cpp
a2bd2d12ad9504583e9311404fcd82b40df49d30 30-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Set write buffer flags only in SkWriteBuffer and SkFlatController constructors.

This is a baby step toward refactored (and faster in-process) typeface and flattenable factory encoding and decoding. The sooner SkWriteBuffer knows its flags, the better.

Next steps will be to rearrange Sk{Read,Write}Buffer members into disjoint strategies to handle typefaces and flattenable factories: one for in-process, one for cross-process, one when validating.

BUG=skia:
R=reed@google.com, scroggo@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/138803005

git-svn-id: http://skia.googlecode.com/svn/trunk@13253 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
8b0e8ac5f582de80356019406e2975079bf0829d 30-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor read and write buffers.

Eliminates SkFlattenable{Read,Write}Buffer, promoting SkOrdered{Read,Write}Buffer
a step each in the hierarchy.

What used to be this:

SkFlattenableWriteBuffer -> SkOrderedWriteBuffer
SkFlattenableReadBuffer -> SkOrderedReadBuffer
SkFlattenableReadBuffer -> SkValidatingReadBuffer

is now

SkWriteBuffer
SkReadBuffer -> SkValidatingReadBuffer

Benefits:
- code is simpler, names are less wordy
- the generic SkFlattenableFooBuffer code in SkPaint was incorrect; removed
- write buffers are completely devirtualized, important for record speed

This refactoring was mostly mechanical. You aren't going to find anything
interesting in files with less than 10 lines changed.

BUG=skia:
R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/134163010

git-svn-id: http://skia.googlecode.com/svn/trunk@13245 2bbb7eff-a529-9590-31e7-b0007b416f81
ndroidPaintTest.cpp
itmapHeapTest.cpp
olorFilterTest.cpp
ataRefTest.cpp
latDataTest.cpp
erializationTest.cpp
5fbccb35eb9e7e8cfa3c6b02026206db77990324 30-Jan-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Suppress new valgrind complaint

https://codereview.chromium.org/144853006/



git-svn-id: http://skia.googlecode.com/svn/trunk@13244 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
5a47b09fe8fff1439510f1839722e24ed6a91eae 30-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland "Add --skip_cpu and --skip_gpu options to tests"

NOTRY=true

BUG=skia:2074
R=djsollen@google.com, mtklein@google.com

Author: borenet@google.com

Review URL: https://codereview.chromium.org/135163004

git-svn-id: http://skia.googlecode.com/svn/trunk@13237 2bbb7eff-a529-9590-31e7-b0007b416f81
est.h
kia_test.cpp
62c2ce84168aad10b91fbac7c9b1a9e1827bb77a 30-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> GrRedBlackTree test is GPU specific.

Wrapp the entire file/test in a SK_SUPPORT_GPU.

This should fix the tree breakage.

BUG=None
TEST=tests
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/147843006

git-svn-id: http://skia.googlecode.com/svn/trunk@13234 2bbb7eff-a529-9590-31e7-b0007b416f81
rRedBlackTreeTest.cpp
68f3a3e0b09fc544ebb20d46e37a95e01b83f74a 30-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland "Unwrap GrRedBlackTree unit test and use REPORTER_ASSERT()."

BUG=None
TEST=tests
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/137423009

git-svn-id: http://skia.googlecode.com/svn/trunk@13233 2bbb7eff-a529-9590-31e7-b0007b416f81
rRedBlackTreeTest.cpp
rUnitTests.cpp
11ea96c62ab8bd2112b51b2820b54bbd4340ffe7 28-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> tests: add --veryVerbose / -V

BUG=skia:
R=caryclark@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/135723013

git-svn-id: http://skia.googlecode.com/svn/trunk@13226 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
04bfdc39a7e42bb8af04533cd4ddec236d75c898 28-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Add --skip_cpu and --skip_gpu options to tests (https://codereview.chromium.org/144343004/)

Reason for revert:
Broke tests on Win7 and Mac

Original issue's description:
> Add --skip_cpu and --skip_gpu options to tests
>
> BUG=skia:2074
>
> Committed: http://code.google.com/p/skia/source/detail?r=13223

R=djsollen@google.com, mtklein@google.com
TBR=djsollen@google.com, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2074

Author: borenet@google.com

Review URL: https://codereview.chromium.org/148173010

git-svn-id: http://skia.googlecode.com/svn/trunk@13224 2bbb7eff-a529-9590-31e7-b0007b416f81
est.h
kia_test.cpp
5683acd9092e95479da28269b8a26f7914b21050 28-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add --skip_cpu and --skip_gpu options to tests

BUG=skia:2074
R=djsollen@google.com, mtklein@google.com

Author: borenet@google.com

Review URL: https://codereview.chromium.org/144343004

git-svn-id: http://skia.googlecode.com/svn/trunk@13223 2bbb7eff-a529-9590-31e7-b0007b416f81
est.h
kia_test.cpp
01260b2dbcc070006c0b960015e44ef83dcbaa56 27-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Unwrap GrRedBlackTree unit test and use REPORTER_ASSERT(). (https://codereview.chromium.org/147713002/)

Reason for revert:
broke http://108.170.217.252:10115/builders/Build-Mac10.8-Clang-x86_64-Release/builds/2908/steps/Retry_BuildTests/logs/stdio and other builders:

GrRedBlackTreeTest.cpp:24:36: error: use of undeclared identifier 'xi'


Original issue's description:
> Unwrap GrRedBlackTree unit test and use REPORTER_ASSERT().
>
> This fixes the mtklein's TODO in GrUnitTests.cpp.
>
> BUG=None
> TEST=out/Debug/tests
> R=mtklein@google.com, robertphillips@google.com
>
> Committed: https://code.google.com/p/skia/source/detail?r=13208

R=mtklein@google.com, robertphillips@google.com, reed@google.com, tfarina@chromium.org
TBR=mtklein@google.com, reed@google.com, robertphillips@google.com, tfarina@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=None

Author: epoger@google.com

Review URL: https://codereview.chromium.org/148653002

git-svn-id: http://skia.googlecode.com/svn/trunk@13209 2bbb7eff-a529-9590-31e7-b0007b416f81
rRedBlackTreeTest.cpp
rUnitTests.cpp
0fba15125b6b72bbc1ab863763f57e68e9ffb8a5 27-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Unwrap GrRedBlackTree unit test and use REPORTER_ASSERT().

This fixes the mtklein's TODO in GrUnitTests.cpp.

BUG=None
TEST=out/Debug/tests
R=mtklein@google.com, robertphillips@google.com

Review URL: https://codereview.chromium.org/147713002

git-svn-id: http://skia.googlecode.com/svn/trunk@13208 2bbb7eff-a529-9590-31e7-b0007b416f81
rRedBlackTreeTest.cpp
rUnitTests.cpp
c2abd54edadf94bb86e1635a3515089e4a6a8eee 25-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add alternative to isRect named asRect

This defines yunchao's proposed interface in terms of
an existing implementation.

BUG=skia:
R=reed@google.com, yunchao.he@intel.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/140953003

git-svn-id: http://skia.googlecode.com/svn/trunk@13183 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
709ca75f032d7c60eb53c5840524a875a3a6cdb1 24-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkOnce: add option to call another cleanup function once at exit.

Use this to clean up empty SkData and SkPathRef.

Current leaks:
Leaked SkRefCntBase: 40
Leaked SkFlattenable: 32
Leaked SkPixelRef: 32
Leaked SkMallocPixelRef: 32
Leaked SkFontConfigInterface: 1
Leaked SkWeakRefCnt: 1
Leaked SkTypeface: 1
Leaked SkFontMgr: 1
Leaked SkDataTable: 3
Leaked SkImage: 1
Leaked ???: 1
Leaked ???: 1

BUG=skia:
R=halcanary@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/132803005

git-svn-id: http://skia.googlecode.com/svn/trunk@13180 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
nceTest.cpp
8f6884aab8aecd7657cf3f9cdbc682f0deca29c5 24-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup: Sanitize the order of includes under tests/

Initially this was to make sure Test.h appeared after the Sk*.h includes.

Patch generated by the following command line:

$ ~/chromium/src/tools/sort-headers.py tests/*.cpp

BUG=None
TEST=tests
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/145313004

git-svn-id: http://skia.googlecode.com/svn/trunk@13177 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
ndroidPaintTest.cpp
nnotationTest.cpp
tomicTest.cpp
itSetTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
equeTest.cpp
eviceLooperTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
rawTextTest.cpp
ynamicHashTest.cpp
mptyPathTest.cpp
rrorTest.cpp
illPathTest.cpp
itsInTest.cpp
latDataTest.cpp
lateTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
ontMgrTest.cpp
ontNamesTest.cpp
rontBufferedStreamTest.cpp
LProgramsTest.cpp
eometryTest.cpp
ifTest.cpp
puDrawPathTest.cpp
rDrawTargetTest.cpp
rMemoryPoolTest.cpp
rUnitTests.cpp
radientTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
mageFilterTest.cpp
nfRectTest.cpp
pegTest.cpp
ListTest.cpp
ayerDrawLooperTest.cpp
D5Test.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emsetTest.cpp
etaDataTest.cpp
ipMapTest.cpp
SPathTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athOpsCubicIntersectionTestData.cpp
athOpsSimplifyFailTest.cpp
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
ictureUtilsTest.cpp
ipeTest.cpp
ixelRefTest.cpp
uickRejectTest.cpp
TreeTest.cpp
andomTest.cpp
eadPixelsTest.cpp
eader32Test.cpp
efCntTest.cpp
efDictTest.cpp
egionTest.cpp
oundRectTest.cpp
HA1Test.cpp
calarTest.cpp
erializationTest.cpp
haderImageFilterTest.cpp
haderOpacityTest.cpp
kpSkGrTest.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
trokeTest.cpp
LSTest.cpp
SetTest.cpp
est.cpp
estSize.cpp
ileGridTest.cpp
oUnicode.cpp
ypeface.cpp
nicodeTest.cpp
nitTestTest.cpp
tilsTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
d8ed85101ee77ad2cb0c186a79d197698a75d246 24-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn NVPR on by default (but off in tools).

BUG=skia:2042

Committed: http://code.google.com/p/skia/source/detail?r=13164

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/144003006

git-svn-id: http://skia.googlecode.com/svn/trunk@13176 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
227c24673196f5f06bee85e7e9aa067be90e1359 24-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Resolve a few memory leaks in tests.

Purge the global scaled image cache after use in tests. The cache was
right to hold on to the pixels indefinitely, but this change makes it
easier to run down actual memory leaks.

Add SK_DECLARE_INST_COUNT to several classes.

BUG=skia:
R=reed@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/145443004

git-svn-id: http://skia.googlecode.com/svn/trunk@13171 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
68c74884d0da1aa794bb660a37f31f2f9108bc36 24-Jan-2014 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Turn NVPR on by default (but off in tools)."

This reverts commit 83d81c96de34950bdd84dc575997a250b685a3d6.

Broke Windows build. Autorevert didn't work.

TBR=bsalomon@google.com,robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
NOPRESUBMIT=true
BUG=skia:2042

Review URL: https://codereview.chromium.org/146863003

git-svn-id: http://skia.googlecode.com/svn/trunk@13169 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
83d81c96de34950bdd84dc575997a250b685a3d6 24-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn NVPR on by default (but off in tools).

BUG=skia:2042
R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/144003006

git-svn-id: http://skia.googlecode.com/svn/trunk@13164 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
6dda827913a3dbdb84934f4f1d79c0b702169e5c 23-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add leaks flag to show unref'd insts

Leaks are shown optionally instead of always for tests, gm, and bench.
The current display does not show actual leaks necessarily, but
shows global objects that were not deleted when the test ended.
To enable the end-of-run leak display, pass --leaks or -l.

BUG=skia:
R=mtklein@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/143943009

git-svn-id: http://skia.googlecode.com/svn/trunk@13151 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
fed2ab648341ec153ad2af746a31d368963171e4 23-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> No deduping dictionaries for matrices and regions.

There's little benefit to deduping matrices and regions: they're infrequently
used, and doubly infrequently reused. Their use-weighted byte cost is tiny.

There is some downside to deduping matrices and regions. Even when they're not
used, we prepare dictionaries for deduping them for every picture. Each of
these dictionaries costs 160 bytes, so two unused dictionaries make a big chunk
of the ~1100 bytes it takes to allocate an SkPictureRecord. (~330 come from
parent class SkCanvas, 768 from SkPictureRecord itself, here reduced to 448).

One side benefit of not deduping these guys is that the change weighs -140 lines of code.

It may go without saying, but this breaks the picture format.

Testing: out/Debug/tests && out/Debug/dm (which runs all picture modes by default)

BUG=skia:1850
R=reed@google.com, bensong@google.com, robertphillips@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/143883006

git-svn-id: http://skia.googlecode.com/svn/trunk@13149 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
58674817a7a5003556a1d0b5b8fa522782a729fa 22-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unnamed namespace usage from tests/

Skia preference is to use 'static' keyword rather than use unnamed
namespace.

BUG=None
TEST=tests
R=robertphillips@google.com, bsalomon@google.com

Review URL: https://codereview.chromium.org/132403008

git-svn-id: http://skia.googlecode.com/svn/trunk@13138 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
rawBitmapRectTest.cpp
ifTest.cpp
mageDecodingTest.cpp
ixelRefTest.cpp
est.cpp
f397b21b691b7ea535dc764590704946cfff7899 17-Jan-2014 Derek Sollenberger <djsollen@google.com> Merge Skia r12682 into Android.

Conflicts:
include/core/SkDraw.h
include/pdf/SkPDFDevice.h
include/utils/SkCanvasStateUtils.h
include/utils/SkFrontBufferedStream.h
src/core/SkDevice.cpp
src/core/SkDeviceLooper.cpp
src/core/SkDeviceLooper.h
src/core/SkRRect.cpp
src/doc/SkDocument_PDF.cpp
src/effects/SkBlurMaskFilter.cpp
src/fonts/SkFontMgr_fontconfig.cpp
src/gpu/GrAAHairLinePathRenderer.cpp
src/gpu/GrAAHairLinePathRenderer.h
src/gpu/GrTextContext.cpp
src/images/SkImageDecoder_libpng.cpp
src/images/SkScaledBitmapSampler.cpp
src/images/SkScaledBitmapSampler.h
src/pdf/SkPDFDevice.cpp
src/pdf/SkPDFDeviceFlattener.cpp
src/ports/SkFontConfigInterface_android.cpp
src/ports/SkFontHost_FreeType.cpp
src/ports/SkFontHost_FreeType_common.cpp
src/utils/SkCanvasStack.cpp
src/utils/SkCanvasStack.h
src/utils/SkCanvasStateUtils.cpp
src/utils/SkDeferredCanvas.cpp
src/utils/SkFrontBufferedStream.cpp
src/utils/SkPictureUtils.cpp

Change-Id: Ice86d9769ed99f804932d8839acfdea695cb6d28
bd58febffb103ea830bf027c5a95313548f7ea8e 17-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Speed up GrResourceCache add and lookup by using TDynamicHash

Speed up GrResourceCache add and lookup by using TDynamicHash instead
of GrTHashTable. GrTHashTable spends most of its time memmoving the
array elements while sorting after an add. Lookup is not particularly
fast either.

R=mtklein@google.com, bsalomon@google.com, reed@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/91453002

git-svn-id: http://skia.googlecode.com/svn/trunk@13122 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
910f694aefb0b671dd8522a9afe9b6be645701c1 16-Jan-2014 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@12682

Change-Id: I0470d8e53bf019f410509180b95950f20f98a5e8
AClipTest.cpp
nnotationTest.cpp
tomicTest.cpp
itSetTest.cpp
itmapCopyTest.cpp
itmapFactoryTest.cpp
itmapGetColorTest.cpp
itmapHeapTest.cpp
itmapTest.cpp
litRowTest.cpp
lurTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorPrivTest.cpp
olorTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
equeTest.cpp
eviceLooperTest.cpp
iscardableMemoryPool.cpp
iscardableMemoryTest.cpp
ocumentTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
rawTextTest.cpp
ynamicHashTest.cpp
mptyPathTest.cpp
rrorTest.cpp
illPathTest.cpp
itsInTest.cpp
latDataTest.cpp
lateTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
ontMgrTest.cpp
ontNamesTest.cpp
rontBufferedStreamTest.cpp
eometryTest.cpp
ifTest.cpp
rDrawTargetTest.cpp
rMemoryPoolTest.cpp
rUnitTests.cpp
radientTest.cpp
ashCacheTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
mageFilterTest.cpp
nfRectTest.cpp
pegTest.cpp
ListTest.cpp
ayerDrawLooperTest.cpp
D5Test.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emsetTest.cpp
etaDataTest.cpp
ipMapTest.cpp
SPathTest.cpp
nceTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpTest.cpp
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
ictureUtilsTest.cpp
ipeTest.cpp
ixelRefTest.cpp
ointTest.cpp
uickRejectTest.cpp
TreeTest.cpp
andomTest.cpp
eader32Test.cpp
efCntTest.cpp
efDictTest.cpp
egionTest.cpp
oundRectTest.cpp
untimeConfigTest.cpp
HA1Test.cpp
calarTest.cpp
erializationTest.cpp
haderImageFilterTest.cpp
haderOpacityTest.cpp
k64Test.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
trokeTest.cpp
urfaceTest.cpp
DStackNesterTest.cpp
LSTest.cpp
SetTest.cpp
est.cpp
estSize.cpp
ileGridTest.cpp
oUnicode.cpp
ypeface.cpp
nicodeTest.cpp
nitTestTest.cpp
tilsTest.cpp
ArrayTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
algrind.supp
9e90aed5de82732cc9921f01388d3063a41a053b 16-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename GrGLBinding->GrGLStandard, no longer a bitfield

BUG=skia:2042
R=jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/133413003

git-svn-id: http://skia.googlecode.com/svn/trunk@13108 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
c665804300096c2e7617379835bb83d715538788 16-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Move SkMessageBus::Get out of header, and retry crrev.com/106563002.

BUG=
R=bsalomon@google.com, kkinnunen@nvidia.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/140053002

git-svn-id: http://skia.googlecode.com/svn/trunk@13104 2bbb7eff-a529-9590-31e7-b0007b416f81
essageBusTest.cpp
esourceCacheTest.cpp
05ec2233e372cc11ad59b3337c96f0147a44ca29 15-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> change isRect to return true for 3-sided rectangular paths

BUG=skia:
R=caryclark@google.com, yunchao.he@intel.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/139483002

git-svn-id: http://skia.googlecode.com/svn/trunk@13092 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
5ccae2c5b134d1b971c188215433305e88491aec 15-Jan-2014 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland "Fix genID cloning bugs."

SkBitmap.cpp:
When copyTo calls readPixels, only clone the genID if the resulting
SkPixelRef has the same dimensions as the original. This catches a
bug where copying an SkBitmap representing the subset of an SkPixelRef
(which implements onReadPixels) would result in the copy sharing the
genID. (Thanks to r6710, this case can only happen using setPixelRef,
so the updated GpuBitmapCopyTest checks for that.)

Move some unnecessary NULL checks to asserts.

When copyTo performs a memcpy, only clone the genID if the resulting
SkPixelRef has the same dimensions as the original. This catches a bug
where copying an extracted SkBitmap with the same width as its original
SkPixelRef would incorrectly have the same genID.

Add a comment and assert in deepCopyTo, when cloning the genID, since
that case correctly clones it.

BitmapCopyTest.cpp:
Pull redundant work out of the inner loop (setting up the source bitmaps
and testing extractSubset). Create a new inner loop for extractSubset, to
test copying the result to each different config.

Extract a subset that has the same width as the original, to catch the
bug mentioned above.

Remove the reporter assert which checks for the resulting rowbytes.

Add checks to ensure that copying the extracted subset changes the genID.

GpuBitmapCopyTest:
Create an SkBitmap that shares an existing SkPixelRef, but only represents
a subset. This is to test the first call to cloneGenID in SkBitmap::copyTo.
In this case, the genID should NOT be copied, since only a portion of the
SkPixelRef was copied.

Also test deepCopy on this subset.

TestIndividualCopy now takes a parameter stating whether the genID should
change in the copy. It also does a read back using the appropriate subset.
It no longer differentiates between copyTo and deepCopyTo, since that
distinction was only necessary for copying from/to configs other than 8888
(which are no longer being tested), where copyTo did a read back in 8888 and
then drew the result to the desired config (resulting in an imperfect copy).

BUG=skia:1742

Committed: http://code.google.com/p/skia/source/detail?r=13021

R=mtklein@google.com

Review URL: https://codereview.chromium.org/112113005

git-svn-id: http://skia.googlecode.com/svn/trunk@13090 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
32678d9a453e2c9fd26e92be429cdd84250b4d85 15-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> use some helper Make functions to initialize SkImageInfo

BUG=
R=halcanary@google.com, scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/137993012

git-svn-id: http://skia.googlecode.com/svn/trunk@13081 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
ixelRefTest.cpp
e2eac8b2fd8966cc9af51f8d40151dad6c591d2e 14-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Move macros from TestClassDef.h to Test.h

Motivation: those macros don't make any sense without the definitions
in Test.h.

BUG=
R=mtklein@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/138563004

git-svn-id: http://skia.googlecode.com/svn/trunk@13074 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
RGBImageEncoderTest.cpp
ndroidPaintTest.cpp
nnotationTest.cpp
tomicTest.cpp
itSetTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapHasherTest.cpp
itmapHeapTest.cpp
itmapTest.cpp
litRowTest.cpp
lurTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
anvasTest.cpp
hecksumTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorPrivTest.cpp
olorTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
equeTest.cpp
eviceLooperTest.cpp
iscardableMemoryPool.cpp
iscardableMemoryTest.cpp
ocumentTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
rawTextTest.cpp
ynamicHashTest.cpp
mptyPathTest.cpp
rrorTest.cpp
illPathTest.cpp
itsInTest.cpp
latDataTest.cpp
lateTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
ontMgrTest.cpp
ontNamesTest.cpp
rontBufferedStreamTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
eometryTest.cpp
ifTest.cpp
puBitmapCopyTest.cpp
puColorFilterTest.cpp
puDrawPathTest.cpp
rContextFactoryTest.cpp
rDrawTargetTest.cpp
rMemoryPoolTest.cpp
rSurfaceTest.cpp
rUnitTests.cpp
radientTest.cpp
ashCacheTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
mageFilterTest.cpp
nfRectTest.cpp
pegTest.cpp
ListTest.cpp
ayerDrawLooperTest.cpp
D5Test.cpp
allocPixelRefTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emoryTest.cpp
emsetTest.cpp
essageBusTest.cpp
etaDataTest.cpp
ipMapTest.cpp
SPathTest.cpp
nceTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athOpsAngleTest.cpp
athOpsBoundsTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
athOpsInverseTest.cpp
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadParameterizationTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsTypesTest.cpp
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
ictureUtilsTest.cpp
ipeTest.cpp
ixelRefTest.cpp
ointTest.cpp
remulAlphaRoundTripTest.cpp
uickRejectTest.cpp
TreeTest.cpp
andomTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
eader32Test.cpp
efCntTest.cpp
efDictTest.cpp
egionTest.cpp
esourceCacheTest.cpp
oundRectTest.cpp
untimeConfigTest.cpp
HA1Test.cpp
calarTest.cpp
erializationTest.cpp
haderImageFilterTest.cpp
haderOpacityTest.cpp
kpSkGrTest.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
trokeTest.cpp
urfaceTest.cpp
DStackNesterTest.cpp
LSTest.cpp
SetTest.cpp
est.h
estClassDef.h
estSize.cpp
ileGridTest.cpp
oUnicode.cpp
ypeface.cpp
nicodeTest.cpp
nitTestTest.cpp
tilsTest.cpp
ArrayTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
fermodeTest.cpp
19382421b916aab00be7265815ba4e2690adf2c9 14-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Convert SkWriter32 to use an SkTDArray for its internal storage.

This reduces the allocation overhead of a null picture (create, beginRecording(), endRecording) from about 18K to about 1.9K. (There's still lots more to prune.)

SkPictureFlat can exploit the fact that Writer32 is contiguous simplify its memory management. The Writer32 itself becomes the scratch buffer.

Remove lots and lots of arbitrary magic numbers that were size guesses and minimum allocation sizes. Keep your eyes open for the big obvious DUH why we save 16K per picture! (Spoiler alert. It's because that first save we issue in beginRecording() forces the old SkWriter32 to allocate 16K.)

Tests passing, DM passing.

bench --match writer: ~20% faster
null bench_record: ~30% faster
bench_record on buildbot .skps: ~3-6% slower, ranging 25% faster to 20% slower
bench_pictures on buildbot .skps: ~1-2% faster, ranging 13% faster to 28% slower

BUG=skia:1850
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/137433003

git-svn-id: http://skia.googlecode.com/svn/trunk@13073 2bbb7eff-a529-9590-31e7-b0007b416f81
ndroidPaintTest.cpp
olorFilterTest.cpp
athTest.cpp
erializationTest.cpp
riter32Test.cpp
2e9a7157ee8ce47dae6e692162440c4f94a05574 14-Jan-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13061 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
e13af711d4ff9031c9ed3054a4c33a56a0c62e1f 13-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/132643007/
Reason for revert: broken tests

TBR=
NOTREECHECKS=true
NOTRY=true
BUG=

Author: reed@google.com

Review URL: https://codereview.chromium.org/134843008

git-svn-id: http://skia.googlecode.com/svn/trunk@13058 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
ixelRefTest.cpp
f0b56e74485d59465194b21f89fa3bc3a7962ac6 13-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert of https://codereview.chromium.org/129423002/"

fixed new api references in unit tests

This reverts commit ffc0058e1fbcbd69617e1f41b2dce5b5765ff99e.

BUG=

Review URL: https://codereview.chromium.org/132643007

git-svn-id: http://skia.googlecode.com/svn/trunk@13057 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
ixelRefTest.cpp
9b06ba4c91484d09565ff4a572d8c5af15dd429e 13-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/129423002/
Reason for revert: broke tests (compile)

R=scroggo@google.com, halcanary@google.com
TBR=halcanary@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=

Author: reed@google.com

Review URL: https://codereview.chromium.org/137133003

git-svn-id: http://skia.googlecode.com/svn/trunk@13056 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
ixelRefTest.cpp
dd9ea9262cb61b545fcf414fbde677eb2b62fee4 13-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkBitmap::installPixelRef()

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/129423002

git-svn-id: http://skia.googlecode.com/svn/trunk@13055 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
ixelRefTest.cpp
7a4b9fab286c3c02cca433c2ca36ebd35377de46 13-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allocate memory in SkTDynamicHash on first use.

This eliminates any dynamic allocation for hash tables that are never used.
This helps SkPicture, where some tables (SkPaint) are almost always used, but
some rarely (SkMatrix) or never (SkRegion).

This also removes the (as yet unimportant) ability for the hash table to
shrink. This makes resizing harder to reason about, so I'd like to leave it
out until we see a need.

BUG=skia:1850
R=tomhudson@chromium.org, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/136403004

git-svn-id: http://skia.googlecode.com/svn/trunk@13051 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
bf0001d0472d727266762c5967ec0d919a6df083 13-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove remaining references to Sk64 (obsolete)

BUG=

Review URL: https://codereview.chromium.org/136673002

git-svn-id: http://skia.googlecode.com/svn/trunk@13042 2bbb7eff-a529-9590-31e7-b0007b416f81
k64Test.cpp
0e4ce14e7fe4b9dadcf494d59e8ab6cbeda8e208 13-Jan-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for r13038



git-svn-id: http://skia.googlecode.com/svn/trunk@13039 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
56bf6e4bce26710b017b61ddadb13e277aab8a45 13-Jan-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Pull in Chromium's version of GatherPixelRefs

https://codereview.chromium.org/134473002/



git-svn-id: http://skia.googlecode.com/svn/trunk@13038 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
4ee16bfaedb14aff8cf102f1f0722ff2529a9699 10-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a DEF_GPUTEST() macro.

This macro is similar to DEF_TEST() and simplifies the process of
setting up a GPU test.

BUG=skia:1952
TEST=tests
R=mtklein@google.com

Review URL: https://codereview.chromium.org/132293005

git-svn-id: http://skia.googlecode.com/svn/trunk@13033 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
lipCacheTest.cpp
eferredCanvasTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
puBitmapCopyTest.cpp
puColorFilterTest.cpp
puDrawPathTest.cpp
rContextFactoryTest.cpp
rDrawTargetTest.cpp
rSurfaceTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
esourceCacheTest.cpp
urfaceTest.cpp
estClassDef.h
ritePixelsTest.cpp
2dc54c94f067f6e589fc2aff1b2f5800766de195 10-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove printfs from FontHostTest when font is not sfnt.

BUG=skia:2009
R=caryclark@google.com

Review URL: https://codereview.chromium.org/134303002

git-svn-id: http://skia.googlecode.com/svn/trunk@13027 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
5c6f1d4424191539ebe5a5c3db883716d67efe12 10-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/112113005/
Reason for revert: breaks unit tests

R=mtklein@google.com, bsalomon@google.com, reed@google.com, scroggo@google.com
TBR=bsalomon@google.com, mtklein@google.com, reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:1742

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/134453002

git-svn-id: http://skia.googlecode.com/svn/trunk@13024 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
0f7e3470d63f77f062626ef68eb735301ad3eb20 10-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/106563002/
Reason for revert: There's a threading issue I don't quite understand yet. Objects are being deleted after we check they're deleted. Will try again.

R=kkinnunen@nvidia.com, kkinnunen@nvidia.com
TBR=kkinnunen@nvidia.com, kkinnunen@nvidia.com
NOTREECHECKS=true
NOTRY=true

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/134363002

git-svn-id: http://skia.googlecode.com/svn/trunk@13023 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
f2595e418661fe3b68c239a945ce8e1d2862e77d 10-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix genID cloning bugs.

SkBitmap.cpp:
When copyTo calls readPixels, only clone the genID if the resulting
SkPixelRef has the same dimensions as the original. This catches a
bug where copying an SkBitmap representing the subset of an SkPixelRef
(which implements onReadPixels) would result in the copy sharing the
genID. (Thanks to r6710, this case can only happen using setPixelRef,
so the updated GpuBitmapCopyTest checks for that.)

Move some unnecessary NULL checks to asserts.

When copyTo performs a memcpy, only clone the genID if the resulting
SkPixelRef has the same dimensions as the original. This catches a bug
where copying an extracted SkBitmap with the same width as its original
SkPixelRef would incorrectly have the same genID.

Add a comment and assert in deepCopyTo, when cloning the genID, since
that case correctly clones it.

BitmapCopyTest.cpp:
Pull redundant work out of the inner loop (setting up the source bitmaps
and testing extractSubset). Create a new inner loop for extractSubset, to
test copying the result to each different config.

Extract a subset that has the same width as the original, to catch the
bug mentioned above.

Remove the reporter assert which checks for the resulting rowbytes.

Add checks to ensure that copying the extracted subset changes the genID.

GpuBitmapCopyTest:
Create an SkBitmap that shares an existing SkPixelRef, but only represents
a subset. This is to test the first call to cloneGenID in SkBitmap::copyTo.
In this case, the genID should NOT be copied, since only a portion of the
SkPixelRef was copied.

Also test deepCopy on this subset.

TestIndividualCopy now takes a parameter stating whether the genID should
change in the copy. It also does a read back using the appropriate subset.
It no longer differentiates between copyTo and deepCopyTo, since that
distinction was only necessary for copying from/to configs other than 8888
(which are no longer being tested), where copyTo did a read back in 8888 and
then drew the result to the desired config (resulting in an imperfect copy).

BUG=skia:1742
R=mtklein@google.com, bsalomon@google.com, reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/112113005

git-svn-id: http://skia.googlecode.com/svn/trunk@13021 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
2b8aacba5299a2759268de7de13af9f319ba39d5 10-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Delete all invalidated resources with same key

Delete all invalidated resources with same key instead of deleting
just the first resource.

R=mtklein@google.com, kkinnunen@nvidia.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/106563002

git-svn-id: http://skia.googlecode.com/svn/trunk@13019 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
a9325fa237dde2654bc841c2bb0a05fc3e57696a 10-Jan-2014 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add REPORTF test macro.

This macro replaces:
SkString str;
str.printf("Foo test Expected %d got %d", x, y);
reporter->reportFailed(str);
with the shorter code:
REPORTF(reporter, ("Foo test Expected %d got %d", x, y));

The new form also appends __FILE__:__LINE__ to the message before calling reportFailed().

BUG=
R=mtklein@google.com

Review URL: https://codereview.chromium.org/132843002

git-svn-id: http://skia.googlecode.com/svn/trunk@13016 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
litRowTest.cpp
ataRefTest.cpp
mptyPathTest.cpp
puBitmapCopyTest.cpp
mageDecodingTest.cpp
athTest.cpp
athCoverageTest.cpp
ortTest.cpp
treamTest.cpp
est.h
856673a816ca313a77090de1627974d7a86e4cd8 10-Jan-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13008 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
fe5824af296c5b7e7f3f14e75124712eabea34e2 09-Jan-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for Mac-specific compilation issue in r13000



git-svn-id: http://skia.googlecode.com/svn/trunk@13001 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ed9866cc8ad9d9687eb0571e45128f1c9422d3f4 09-Jan-2014 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Expand GatherPixelRefs unit test

https://codereview.chromium.org/132293002/



git-svn-id: http://skia.googlecode.com/svn/trunk@13000 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
2b0f7c321cd286913d63a4815e805ef55fa28e2d 09-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Convert Checksum test to DEF_TEST() macro.

BUG=None
TEST=tests
R=mtklein@google.com, bungeman@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/126743003

git-svn-id: http://skia.googlecode.com/svn/trunk@12996 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
672588b684d484dce6ae251e9e163e4a46924322 08-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change offset to xy for pixelref subsetting

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/105893012

git-svn-id: http://skia.googlecode.com/svn/trunk@12958 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
9109e188c77abfd2832767530d33fdec35290a84 07-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build warnings in SkAlphaThresholdFilter

BUG=None
R=bsalomon@google.com

Author: zork@chromium.org

Review URL: https://codereview.chromium.org/101763010

git-svn-id: http://skia.googlecode.com/svn/trunk@12937 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
40eb3c100095c8573ddfdc553794b3182d7b18d1 07-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add AlphaThreshold filter.

This is based on the Bitmap Alpha Threshold filter, and will be used by Chromium
to implement the window shape API.

R=bsalomon@chromium.org, wez@chromium.org, bsalomon@google.com, reed@google.com

Author: zork@chromium.org

Review URL: https://codereview.chromium.org/115633002

git-svn-id: http://skia.googlecode.com/svn/trunk@12935 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
452eecb4436f27e057d4d2df26e3a70020a817b6 06-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Convert two more tests to DEF_TEST() macro.

Out of three, two were converted.

These tests were found with the following command line:

$ g grep "public Test"

BUG=None
TEST=ran tests executable fine.
R=mtklein@google.com

Review URL: https://codereview.chromium.org/122943004

git-svn-id: http://skia.googlecode.com/svn/trunk@12905 2bbb7eff-a529-9590-31e7-b0007b416f81
RGBImageEncoderTest.cpp
itmapHasherTest.cpp
6776b82d466fa93ccffd251fdf556fe058395444 03-Jan-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkImageFilter crop rects relative to the primitive origin, instead of relative to their parent's crop rect. This is required by SVG semantics, and is more sane anyway.

To do this, this patch changes the "offset/loc" parameter in filterImage() / onFilterImage() from an inout-param to an out-param only, so that the calling filter can know how much the input filter wants its result offset (and doesn't include the original primitive position). This offset can then be applied to the current filter's crop rect. (I've renamed the parameter "offset" in all cases to make this clear.) This makes the call sites in SkCanvas/SkGpuDevice responsible for applying the resulting offset to the primitive's position, which is actually a fairly small change.

This change also fixes SkTileImageFilter and SkOffsetImageFilter to correctly handle an input offset, which they weren't before. This required modifying the GM's, since they assumed the broken behaviour.

NOTE: this will require rebaselining the imagefiltersgraph test, since it has a new test case.

NOTE: this will "break" the Blink layout tests css3/filters/effect-reference-subregion-chained-hw.html and css3/filters/effect-reference-subregion-hw.html, but it actually makes them give correct results. It should be suppressed on the skia roll, and I'll rebaseline it.

R=reed@google.com

Review URL: https://codereview.chromium.org/112803004

git-svn-id: http://skia.googlecode.com/svn/trunk@12895 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
dcea5300dc028b5ea210d778b9e34a7504fee6d2 03-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> assert in setPixelRef that the pr matches the bitmap's config

BUG=
R=halcanary@google.com

Review URL: https://codereview.chromium.org/120063003

git-svn-id: http://skia.googlecode.com/svn/trunk@12880 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
862020763d9d2fb1900b2c84e55dadf46482246d 03-Jan-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12875 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
allocPixelRefTest.cpp
07adb6359fd137ccb633b2c64ee2287c8edfd701 02-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Function pointers -> templates in SkPictureFlat.

These flatten/unflatten function pointers were driving me nuts when reading the
generated assembly for this code. We don't need the flexibility of function
pointers here, so let's use templates to make it more manageable. You'll
notice we get much better typing now on flatten/unflatten.

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/123213004

git-svn-id: http://skia.googlecode.com/svn/trunk@12873 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHeapTest.cpp
latDataTest.cpp
78e7b4e1b928fa69f672be3c743df6d6c3ecbced 02-Jan-2014 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Get rid of DEFINE_TESTCLASS_SHORT() macro.

Instead tests should be written using DEF_TEST() macro, which is much
nicer and simplifies the process of setting up an unit test.

BUG=None
TEST=skpskgr_test, pathops_unittest
R=mtklein@google.com

Review URL: https://codereview.chromium.org/117863005

git-svn-id: http://skia.googlecode.com/svn/trunk@12870 2bbb7eff-a529-9590-31e7-b0007b416f81
ndroidPaintTest.cpp
athOpsAngleTest.cpp
athOpsBoundsTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
athOpsInverseTest.cpp
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadParameterizationTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsTypesTest.cpp
kpSkGrTest.cpp
estClassDef.h
1bed687f6b8fc67336f0f5d6fb5a5b38dd0fdff9 02-Jan-2014 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a release procedure to SkMallocPixelRef; remove SkDataPixelRef

This works in a way that is similar to SkData.

SkMallocPixelRef::NewWithProc

Motivation: Chrome has a ETC1PixelRef which calls delete[] on the
pixles on destruction. There is no reason for them to almost
duplicate our class, when we can provide them a more flexible
class. Example use:

static void delete_uint8_proc(void* ptr, void*) {
delete[] static_cast<uint8_t>(ptr);
}
SkPixelRef* new_delete_pixref(const SkImageInfo& info,
SkColorTable* ctable) {
size_t rb = info.minRowBytes();
return SkMallocPixelRef::NewWithProc(
info, rb, ctable,
new uint8_t[info.getSafeSize(rb)],
delete_uint8_proc, NULL);
}

SkMallocPixelRef::NewWithData

Motivation: This allows up to eliminate SkDataPixelRef. We
modified SkImage_Raster to use MallocPixelRef rather than
SkDataPixlRef.

Also: Unit tests in tests/MallocPixelRefTest.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/106883006

git-svn-id: http://skia.googlecode.com/svn/trunk@12861 2bbb7eff-a529-9590-31e7-b0007b416f81
allocPixelRefTest.cpp
261c66668269588a26757a0bfe28a3a3eac07665 02-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make tests output spin on the same line by default.

-v now gives a cleaned-up version of the existing output (every test timed, useless information removed)

Example output, default:
[ 36/193] PathOpsCubicIntersectionOneOffTest
then later when finished...
[193/193] BlurMaskFilter

Example output, -v: (note, codereview is messing up my pretty spacing)
Skia UnitTests: --resourcePath resources SK_RELEASE SK_SCALAR_IS_FLOAT skia_arch_width=32
[ 1/193] 0ms PathOpsSimplifyDontFailOneTest
[ 2/193] 0ms PathOpsSimplifyFailOneTest
[ 3/193] 30ms PathOpsSkpTest
[ 4/193] 21ms PathOpsSimplifyFailTest
....
[182/193] 1026ms BlitRow
[183/193] 808ms AAClip
[184/193] 4333ms Math
[185/193] 5068ms PackBits
[186/193] 2265ms DrawText_DrawPosText
[187/193] 9163ms PathOpsRectsThreadedTest
[188/193] 5540ms GLPrograms
[189/193] 0ms GLInterfaceValidation
[190/193] 2ms DeferredCanvas
[191/193] 1ms ClipCache
[192/193] 30ms BlurMaskFilter
[193/193] 10396ms PathOpsOpCubicsThreadedTest
Finished 193 tests, 0 failures, 0 skipped. (622610 internal tests)

BUG=
R=halcanary@google.com, mtklein@google.com, bungeman@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/109513002

git-svn-id: http://skia.googlecode.com/svn/trunk@12860 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
3d50ea1b87132833d7eab38964f40315ba553205 02-Jan-2014 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add Options to SkDecodingImageGenerator, simplify API.

Motivation: We want to remove redundant classes from Skia. To
that end we want to remove SkImageRef and its subclasses and
replace their uses with SkDiscardablePixelRef +
SkDecodingImageGenerator. Since Android uses SkImageRef, we need
to make sure that SkDecodingImageGenerator allows all of the
settings that Android exposes in BitmapFactory.Options.

To that end, we have created an Options struct for the
SkDecodingImageGenerator which lets the client of the generator set
sample size, dithering, and bitmap config.

We have made the SkDecodingImageGenerator constructor private
and replaced the SkDecodingImageGenerator::Install functions
with a SkDecodingImageGenerator::Create functions (one for
SkData and one for SkStream) which now take a
SkDecodingImageGenerator::Options struct.

Also added a ImageDecoderOptions test which loops through a list
of sets of options and tries them on a set of 5 small encoded
images.

Also updated several users of SkDecodingImageGenerator::Install to
follow new call signature - gm/factory.cpp, LazyDecodeBitmap.cpp,
and PictureTest.cpp, CachedDecodingPixelRefTest.cpp.

We also added a new ImprovedBitmapFactory Test which simulates the
exact function that Android will need to modify to use this,
installPixelRef() in BitmapFactory.

R=reed@google.com, scroggo@google.com

Committed: https://code.google.com/p/skia/source/detail?r=12744

Review URL: https://codereview.chromium.org/93703004

git-svn-id: http://skia.googlecode.com/svn/trunk@12855 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
f5e1f63461d0a4dcb4bd5d0388ec6d392b97e5f0 31-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12849 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapTest.cpp
4856964eae9cdb779baa08ef9e5646ccb9a3140d 30-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> ComputeRowBytes must not overflow width when it shifts

BUG=
R=halcanary@google.com

Review URL: https://codereview.chromium.org/122473002

git-svn-id: http://skia.googlecode.com/svn/trunk@12848 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapTest.cpp
57212f9469c8056bab3c85243dbb904e386eab95 30-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert of https://codereview.chromium.org/113823003/"

This reverts commit 68b4b32066ea0ba9dbb5d326a836f8a54297b7aa.

BUG=

Review URL: https://codereview.chromium.org/122293002

git-svn-id: http://skia.googlecode.com/svn/trunk@12842 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
k64Test.cpp
4ad4ae907fa83773f671137b0e4e8c9525ab81cd 30-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/113823003/
Reason for revert: need to update callsites in linux codecs

R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=

Author: reed@google.com

Review URL: https://codereview.chromium.org/122283002

git-svn-id: http://skia.googlecode.com/svn/trunk@12841 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
k64Test.cpp
a306d93cd73c3fc1d81479cbba98638f1e055385 30-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove Sk64 from public API, and start to remove usage internally

BUG=
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/113823003

git-svn-id: http://skia.googlecode.com/svn/trunk@12840 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
k64Test.cpp
dedd44adea3b87faea4bcd833c6a508a6db8fcfd 20-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Red/Blue decoding problem in WebP.

Added unit test with lossless webp data.

BUG=skia:1402

Will need to rebaseline webp expectations for some systems.

R=scroggo@google.com

Review URL: https://codereview.chromium.org/105443005

git-svn-id: http://skia.googlecode.com/svn/trunk@12803 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
01c41a556e0ef0ae2338a1b5ae110a501e1ed0a8 20-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "begin to remove SkLONGLONG and wean Skia off of Sk64""

This reverts commit 15b986baf026a3da5e2cac8106a1b753df242c39.

BUG=

Review URL: https://codereview.chromium.org/119353003

git-svn-id: http://skia.googlecode.com/svn/trunk@12796 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
athTest.cpp
k64Test.cpp
b1560445c66a751fc2ea7b85b94430a985940f3e 19-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "begin to remove SkLONGLONG and wean Skia off of Sk64"

This reverts commit 784890196fdab96289f9389db43aca01f35db0f9.

Revert "use LL suffix for 64bit literal"

This reverts commit 9634295aff9bffd7a3875a0ca4a9b1a27d0793fc.

BUG=

Review URL: https://codereview.chromium.org/116543009

git-svn-id: http://skia.googlecode.com/svn/trunk@12790 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
athTest.cpp
k64Test.cpp
8d7ed847be265d3e5058079029a3f6430d93130e 19-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use LL suffix for 64bit literal

BUG=

Review URL: https://codereview.chromium.org/108683009

git-svn-id: http://skia.googlecode.com/svn/trunk@12789 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
d6a301e9adfe465cbaf682963b3bd43d7fcebedc 19-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> begin to remove SkLONGLONG and wean Skia off of Sk64

BUG=
R=caryclark@google.com

Review URL: https://codereview.chromium.org/99433009

git-svn-id: http://skia.googlecode.com/svn/trunk@12788 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
athTest.cpp
k64Test.cpp
1915fd09f3b60eb907f5ab155e8379b589e2bae1 19-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused SkFixed and SkFract functions

BUG=
R=caryclark@google.com

Review URL: https://codereview.chromium.org/113873008

git-svn-id: http://skia.googlecode.com/svn/trunk@12767 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
k64Test.cpp
4fa237f2fb66e7f3be003add06e719e1ca1fe643 19-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Yet another round of valgrind suppressions

https://codereview.chromium.org/116053004/



git-svn-id: http://skia.googlecode.com/svn/trunk@12766 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
9f9d5829c29d8934fa0d4d348173d5ae39bed4e9 18-Dec-2013 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Get rid of DEFINE_TESTCLASS() macro.

Remaining tests were rewrite to use DEF_TEST() macro instead. This fixes
the FIXME in TestClassDef.h

BUG=None
TEST=tests
R=mtklein@google.com

Review URL: https://codereview.chromium.org/114563003

git-svn-id: http://skia.googlecode.com/svn/trunk@12760 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
estClassDef.h
ileGridTest.cpp
9cfa287bc7f933b868311e9c20526b9798459d13 18-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkBitmapAlphaThresholdShader

R=bsalomon@google.com

Author: zork@chromium.org

Review URL: https://codereview.chromium.org/108653012

git-svn-id: http://skia.googlecode.com/svn/trunk@12759 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
1ad518bf38184ae820f31f9b79dfb4e4daf5841a 18-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/93703004/
Reason for revert: Test failures

R=scroggo@google.com, djsollen@google.com, reed@google.com, halcanary@google.com
TBR=djsollen@google.com, halcanary@google.com, reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/103753007

git-svn-id: http://skia.googlecode.com/svn/trunk@12747 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
d665dc4c100f73272422dd17b4dd2c5d57a6b6de 18-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add Options to SkDecodingImageGenerator, simplify API.

Motivation: We want to remove redundant classes from Skia. To
that end we want to remove SkImageRef and its subclasses and
replace their uses with SkDiscardablePixelRef +
SkDecodingImageGenerator. Since Android uses SkImageRef, we need
to make sure that SkDecodingImageGenerator allows all of the
settings that Android exposes in BitmapFactory.Options.

To that end, we have created an Options struct for the
SkDecodingImageGenerator which lets the client of the generator set
sample size, dithering, and bitmap config.

We have made the SkDecodingImageGenerator constructor private
and replaced the SkDecodingImageGenerator::Install functions
with a SkDecodingImageGenerator::Create functions (one for
SkData and one for SkStream) which now take a
SkDecodingImageGenerator::Options struct.

Also added a ImageDecoderOptions test which loops through a list
of sets of options and tries them on a set of 5 small encoded
images.

Also updated several users of SkDecodingImageGenerator::Install to
follow new call signature - gm/factory.cpp, LazyDecodeBitmap.cpp,
and PictureTest.cpp, CachedDecodingPixelRefTest.cpp.

We also added a new ImprovedBitmapFactory Test which simulates the
exact function that Android will need to modify to use this,
installPixelRef() in BitmapFactory.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/93703004

git-svn-id: http://skia.googlecode.com/svn/trunk@12744 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
mageDecodingTest.cpp
ictureTest.cpp
45e01c36da864eae89775c5f0120317d6b56bca5 18-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Suppress questionable gpu errors

https://codereview.chromium.org/118283002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12743 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
e1ca705cac4b946993f6cbf798e2a0ba27e739f3 17-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients

BUG=
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/111353003

git-svn-id: http://skia.googlecode.com/svn/trunk@12719 2bbb7eff-a529-9590-31e7-b0007b416f81
athCoverageTest.cpp
athOpsExtendedTest.cpp
8f4d2306fa866a26f9448048ff63f692b2ba43aa 17-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SK_SCALAR_IS_[FLOAT,FIXED] and assume floats

To keep the CL (slightly) managable, this does not make any changes to
existing macros (e.g. SkScalarMul). Just tackling #ifdef constructs this
time around.

BUG=
R=bsalomon@google.com, caryclark@google.com

Review URL: https://codereview.chromium.org/117053002

git-svn-id: http://skia.googlecode.com/svn/trunk@12712 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
rawPathTest.cpp
nfRectTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
DFPrimitivesTest.cpp
athMeasureTest.cpp
athTest.cpp
calarTest.cpp
tringTest.cpp
ritePixelsTest.cpp
kia_test.cpp
96f5fa02e996e39179f2eb88d57e8ed6114b06c5 16-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12685 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
4f3c305a5bf635dd720cad24f587167e576f2170 14-Dec-2013 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix some presubmit warnings.

I found this while running a modified version of v8's tools/presubmit.py
script.

samplecode/SampleImage.cpp does not end with a single new line.
samplecode/SampleImageDir.cpp does not end with a single new line.
src/ports/SkFontHost_sandbox_none.cpp does not end with a single new line.
tests/FlatDataTest.cpp does not end with a single new line.
tests/ImageCacheTest.cpp has trailing whitespaces in line 31.

* Removed three empty files.
* Add single new line to FlatDataTest.cpp
* Removed trailing whitespace in ImageCacheTest.cpp

BUG=None
TEST=None
R=bsalomon@google.com
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/111503008

git-svn-id: http://skia.googlecode.com/svn/trunk@12684 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
mageCacheTest.cpp
bf790232f6d94b54239dbc210d8beee7411ca458 13-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update all callsites to use info for pixelrefs

#define SK_SUPPORT_LEGACY_PIXELREF_CONSTRUCTOR in chrome to keep old API signature (for now)

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/100723005

git-svn-id: http://skia.googlecode.com/svn/trunk@12677 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
0efb21bd1cd359b732a59753f3c1da096aab561a 13-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improved SkPathRef interface security

https://codereview.chromium.org/115323004/



git-svn-id: http://skia.googlecode.com/svn/trunk@12676 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
2af6c1204de73a2513189007b9623fec0e296dc2 13-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix win7 BitmapTest

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/110223005

git-svn-id: http://skia.googlecode.com/svn/trunk@12675 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapTest.cpp
4428734907480cdb4ccecb47152d7be8cd1aec32 13-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow 0-width SkBitmap in setConfig.

Previously, SkBitmap::setConfig would allow zero height, but not zero
width. This is changed for consistancy.

A unit test was added.

BUG=
R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/111953004

git-svn-id: http://skia.googlecode.com/svn/trunk@12673 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapTest.cpp
0daa1adb03b4b1fc11d854cb7754416ac05a31e8 13-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r12665 & r12666 (Remove duplicate impl for SkImageInfo flattening) due to Chromium/Blink compilation errors

https://codereview.chromium.org/112603003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12667 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
93b40594b78ab40170b5a7fa0811fa95ab8fc30f 13-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remvoe duplicate impl for SkImageInfo flattening
Add onNewLockPixels

This reverts commit bb8eff6a70c52b7644391cfd4f4d21bf7294a6bf.

BUG=

Review URL: https://codereview.chromium.org/111323005

git-svn-id: http://skia.googlecode.com/svn/trunk@12665 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
6b8dbb668f1f069270d35a47cfe98decd059c625 13-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move segment mask from SkPath to SkPathRef

https://codereview.chromium.org/105083003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12660 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
1d0654f69d1d0c3bb565fba018a11c77f25bc55e 12-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> be sure to unlock the discardablememory before deleting it

BUG=

Review URL: https://codereview.chromium.org/114673002

git-svn-id: http://skia.googlecode.com/svn/trunk@12658 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
e4fafb146e85cdfcf9d5418597b6818aa0754ada 12-Dec-2013 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use DEFINE_TESTCLASS_SHORT macro in tests.

The three version of DEFINE_TESTCLASS macro is deprecated and thus just
use the simple, short one.

BUG=None
TEST=out/Debug/tests
R=mtklein@google.com, bsalomon@google.com, robertphillips@google.com

Review URL: https://codereview.chromium.org/100113004

git-svn-id: http://skia.googlecode.com/svn/trunk@12653 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
tomicTest.cpp
itSetTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapHeapTest.cpp
litRowTest.cpp
anvasStateTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorTest.cpp
ataRefTest.cpp
equeTest.cpp
eviceLooperTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
rawTextTest.cpp
ynamicHashTest.cpp
mptyPathTest.cpp
rrorTest.cpp
illPathTest.cpp
itsInTest.cpp
latDataTest.cpp
lateTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
ontMgrTest.cpp
ontNamesTest.cpp
rontBufferedStreamTest.cpp
eometryTest.cpp
ifTest.cpp
rMemoryPoolTest.cpp
radientTest.cpp
ashCacheTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
nfRectTest.cpp
pegTest.cpp
ListTest.cpp
ayerDrawLooperTest.cpp
D5Test.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emsetTest.cpp
etaDataTest.cpp
ipMapTest.cpp
SPathTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
ictureUtilsTest.cpp
ipeTest.cpp
uickRejectTest.cpp
TreeTest.cpp
andomTest.cpp
eader32Test.cpp
efCntTest.cpp
efDictTest.cpp
egionTest.cpp
oundRectTest.cpp
HA1Test.cpp
calarTest.cpp
erializationTest.cpp
haderImageFilterTest.cpp
haderOpacityTest.cpp
k64Test.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
trokeTest.cpp
LSTest.cpp
SetTest.cpp
estSize.cpp
oUnicode.cpp
ypeface.cpp
nicodeTest.cpp
nitTestTest.cpp
tilsTest.cpp
ArrayTest.cpp
riter32Test.cpp
fermodeTest.cpp
398337b3a5d66a7db5d36a3b5182e4407e2292f7 11-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "remvoe duplicate impl for SkImageInfo flattening"

Reason: breaks chrome_mac_tests which still have non-imageinfo constructors

This reverts commit a06b8cf60b39bda93e9ef1a73579007b2b930d29.

BUG=

Review URL: https://codereview.chromium.org/103033005

git-svn-id: http://skia.googlecode.com/svn/trunk@12631 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
1236d8e37c96339865832ceef569340283201e37 11-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix bug in ToUnicode table generation for Type 3 fonts.

True glyphIDs where being using in the Type3 ToUnicode table instead of IDs of 1-255. This causes poppler to complain about each entry.

BUG:skia:1565

R=bungeman@google.com

Author: vandebo@chromium.org

Review URL: https://codereview.chromium.org/112053005

git-svn-id: http://skia.googlecode.com/svn/trunk@12625 2bbb7eff-a529-9590-31e7-b0007b416f81
oUnicode.cpp
f3aead2829fa515f790631ee65784a7b9b073343 11-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remvoe duplicate impl for SkImageInfo flattening

Revert "Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.""""""

This reverts commit eabd6b2ed4e494b323c08f32358f45950a0368c3.

BUG=

Review URL: https://codereview.chromium.org/108773003

git-svn-id: http://skia.googlecode.com/svn/trunk@12624 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
6a32add491cc736aab95561d137909cd7c5d65ef 11-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap."""""

This reverts commit d08eca87a0bef10112a211de540f89656a80b86a.

BUG=

Review URL: https://codereview.chromium.org/108303003

git-svn-id: http://skia.googlecode.com/svn/trunk@12623 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
6965a0a2df9d35cd0a25e1738f0388272d03f399 11-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.""""

BUG=

Review URL: https://codereview.chromium.org/110503003

git-svn-id: http://skia.googlecode.com/svn/trunk@12622 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
772443a3e6428422f20ca4f40ed453a5c3604884 11-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add more tests for discardable caches

BUG=
R=halcanary@google.com

Review URL: https://codereview.chromium.org/112833003

git-svn-id: http://skia.googlecode.com/svn/trunk@12618 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
63ba31948392a56c191607d62a2414f16253e47b 11-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12617 2bbb7eff-a529-9590-31e7-b0007b416f81
iscardableMemoryTest.cpp
edd370f949a457f5d8f7a62efdaf685d4caf46fe 10-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sk_API for SkImageGenerator and SkInstallDiscardablePixelRef

Added SK_API to SkImageGenerator (already in include/).

Moved SkDiscardablePixelRef::Install to SkInstallDiscardablePixelRef,
added SK_API to that function, and moved declaration to
SkImageGenerator.h

This keeps the SkDiscardablePixelRef internal to Skia, but exposes a
method to install it into a bitmap.

Modifed tests that rely on this functio to use new version.

BUG=
R=mtklein@google.com, reed@google.com

Review URL: https://codereview.chromium.org/111713002

git-svn-id: http://skia.googlecode.com/svn/trunk@12612 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
rawBitmapRectTest.cpp
bc55eec80ef376208b3c1bfc65d8dc8b672d59f0 10-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkAshmemDiscardableMemory

- Implement ashmem-backed SkDiscardableMemory subclass:
This class in only accesible via the SkDiscardableMemory::Create()
function, which replaces the mock implementation in
SkDiscardableMemory_none.cpp

- Added SkDiscardableMemory_ashmem.cpp to the Android port of Skia
Removed SkDiscardableMemory_none.cpp from the Android port.

- Added DiscardableMemoryTest.
Still needs work.

- SkDiscardablePixelRef Bugfix:
onLockPixels() now calls SkDELETE on the SkDiscardableMemory pointer
when it fails to unlock.

- Improved documentation inside ashmem.h

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/83563002

git-svn-id: http://skia.googlecode.com/svn/trunk@12608 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
iscardableMemoryTest.cpp
cf0803b46f60d9fcb5ad9a376b638c4c32b655de 10-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12590 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
e4eb122a61d7c29f1dd979a41d90524fd249db3f 09-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support scaledimagecache instantiable using discardablememory

Add this to your build/gyp system to use discardable instead of malloc+budget

#define SK_USE_DISCARDABLE_SCALEDIMAGECACHE

R=halcanary@google.com

Review URL: https://codereview.chromium.org/105933003

git-svn-id: http://skia.googlecode.com/svn/trunk@12588 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
9230ea29718bcf1a92a89a1a518fb896bbbe00cf 09-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> make info real in SkPixelRef, and add bitmap::asImageInfo

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/108663004

git-svn-id: http://skia.googlecode.com/svn/trunk@12586 2bbb7eff-a529-9590-31e7-b0007b416f81
ixelRefTest.cpp
cea9abb001b07eaf4340a78db708bfac9e8c68c2 09-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Do not use GrBicubic effect when downscaling. Also, don't use glTexStorage as it interferes with deleyed mipmap generation.

R=robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/105353002

git-svn-id: http://skia.googlecode.com/svn/trunk@12576 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
aad7e0b60779f613f49b890a1a631a80a5ce7e95 09-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add more valgrind suppressions

https://codereview.chromium.org/102443003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12561 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
2ebc10dd12a6fe55fda37a9bd5b1e0c1c1e08232 06-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap."""

This reverts commit 5f035e90d6dea0139a4f204b634e7b7b3b4976d7.

Reverting because it breaks chrome/blink due to new SkPixelRef constructor arg.

BUG=

Review URL: https://codereview.chromium.org/108993002

git-svn-id: http://skia.googlecode.com/svn/trunk@12551 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
473f0aa2bb218e50fce5e19063f8c8fdaf57fad4 06-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.""

This reverts commit 4174afb18a9746bbad2a06c0ec2d4ad35f72d790.

BUG=

Review URL: https://codereview.chromium.org/108723003

git-svn-id: http://skia.googlecode.com/svn/trunk@12547 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
c2e9db30d393862bd3485cfe57b4ac06433f2f32 06-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed a few places where uninitialized memory could have been read

Also added early exit in SkImageFilter's constructor to avoid attempting to deserialize all inputs once a bad input has been found. This avoids hanging if a filter pretends to have 1 billion inputs when that's just an error on the number of inputs read by the filter.

BUG=326206,326197,326229
R=senorblanco@chromium.org, senorblanco@google.com, reed@google.com, sugoi@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/106943002

git-svn-id: http://skia.googlecode.com/svn/trunk@12544 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
5b132b28da61e89cdcb84e95f30a58f8184739fc 06-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap."

This reverts commit 154e08b2f5904ef533da694e3510befcb9a3f3e2.

revert due to warnings

Review URL: https://codereview.chromium.org/108513003

git-svn-id: http://skia.googlecode.com/svn/trunk@12538 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
3e89524e747b513986abfeeea00b6fac79593f26 06-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.

R=mtklein@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/68973005

git-svn-id: http://skia.googlecode.com/svn/trunk@12537 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
ictureTest.cpp
ixelRefTest.cpp
erializationTest.cpp
ffb68f67537b8db510155cb1e4bff03832a07f6f 06-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Generalize valgrind suppressions & a 2 more

https://codereview.chromium.org/107443004/



git-svn-id: http://skia.googlecode.com/svn/trunk@12531 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
726b97a3c497cdec2fb9f7fd01da4109e2e5ac46 06-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12524 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
iscardableMemoryPool.cpp
1b2c1b893adb7fdd4ee2ac305e47009c428ba72a 05-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkOnce: let f be any functor, update comments

BUG=
R=bungeman@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/104433005

git-svn-id: http://skia.googlecode.com/svn/trunk@12518 2bbb7eff-a529-9590-31e7-b0007b416f81
nceTest.cpp
2c7c7ee47d75e7815ea8db05e924ab55958cb402 05-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Big Cleanup: SkBitmapFactory, SkLazyPixelRef, SkImageCache

Removed SkBitmapFactory since no clients were using it. New cache
selection mechanism can simply pass a SkDiscardableMemory::Factory
into the SkDiscardablePixelRef if non-default SkDiscardableMemory
should be used. Removed BitmapFactoryTest.

SkDiscardableMemory::Factory interface. Android will need this
functionality in the future inside their BitmapFactory.

Removed SkLazyPixelRef, since it's functionality is now subsumed into
SkDiscardablePixelRef. Removed LazyPixelRef test.

Modified SkDiscardablePixelRef to optionally allow it to use a
SkDiscardableMemory::Factory. This tiny change makes it a replacement
for SkLazyPixelRef. This functioanlity is also necessary for moving
Android over to SkDiscardablePixelRef from SkImageRef in a later CL.
Added a test for this.

SkDecodingImageGenerator::Install can optionally pass a factory in to
SkDiscardablePixelRef.

Removed SkImageCache, SkLruImageCache, and SkPurgeableImageCache.
This functionality can be handled much more cleanly by
SkDiscardableMemory.

New SkDiscardableMemoryPool class to replace SkLruImageCache. In a
later CL, we will replace SkImageRef_GlobalPool (used by android) as
well. This is a concrete implementation of
SkDiscardableMemory::Factory. Added a test for this.

modified gm/factory.cpp to remove dependnce on SkBitmapFactory +
SkLruImageCache. Now uses SkDecodingImageGenerator +
SkDiscardablePixelRef + SkDiscardableMemoryPool.

SkImageDecoder::Target replaces SkBitmapFactory::Target. The
DecodeMemoryToTarget function may disappear in the future.

Moved SkLazyCachingPixelRef::DecodeProc replaces
SkBitmapFactory::DecodeProc. This is a short term change, since
another CL changes SkLazyCachingPixelRef to use SkImageGenerator
instead of DecodeProc.

Modified DrawBitmapRectTest to use SkDiscardablePixelRef instead of
SkLazyPixelRef.

tools/LazyDecodeBitmap.cpp now uses SkDecodingImageGenerator +
SkDiscardablePixelRef instead of a SkBitmapFactory.

bench_pictures uses the Global SkDiscardableMemoryPool instead of a
global gLruImageCache.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/103033002

git-svn-id: http://skia.googlecode.com/svn/trunk@12515 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapFactoryTest.cpp
achedDecodingPixelRefTest.cpp
iscardableMemoryPool.cpp
rawBitmapRectTest.cpp
28ea0b258e4d13f1d32fa7b508a92d1d42499398 05-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update valgrind suppressions for new driver

https://codereview.chromium.org/102473003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12510 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
dcfebfa823fe09886f996b66f223c1deb37c16d1 05-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix MacOS build error from 36d08c5c90c7

BUG=

Review URL: https://codereview.chromium.org/105453005

git-svn-id: http://skia.googlecode.com/svn/trunk@12506 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
36d08c5c90c7607cd559769f7a9c2b3364eeba85 05-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkCachingPixelRef to use SkImageGenerator

- Remove SkLazyCachingPixelRef class.

- Refactor unit tests.

BUG=
R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/84083002

git-svn-id: http://skia.googlecode.com/svn/trunk@12505 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
ab1c13864df34aecfd4840ea7d1e4f8730b44f4e 05-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix compilation with SK_ENABLE_INST_COUNT=1

Add INHERITED declarations to class declarations that prevent
compilation with the flag.

Remove SK_DEFINE_INST_COUNT from all class implementations. Instead,
use function-local static variables in the reference count helper
classes to create the global instances to store the needed info. The
accessor functions are defined inline in the helper classes, so
definitions are not needed. The initialization point of the variables
should be as well defined as previously.

Remove SK_DECLARE_INST_COUNT_TEMPLATE and use SK_DECLARE_INST_COUNT
instead. This avoids possible future compilation errors further.

For SK_ENABLE_INST_COUNT=0 compilation, add an empty static member
function to all classes that use SK_DECLARE_INST_COUNT and
SK_DECLARE_INST_COUNT_ROOT macros. The function ensures that classes
contain public INHERITED typedef. This member function seems to be
compiled away. This shouĺd ensure that part of the compilation errors
are caught earlier.

Also adds DSK_DECLARE_INST_COUNT to few SkPDFDict subclasses.

R=robertphillips@google.com, richardlin@chromium.org, bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/98703002

git-svn-id: http://skia.googlecode.com/svn/trunk@12501 2bbb7eff-a529-9590-31e7-b0007b416f81
rMemoryPoolTest.cpp
ListTest.cpp
efDictTest.cpp
est.cpp
tilsTest.cpp
8491d24bdc3f48f67475c12c60babb9f9dba8047 05-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12499 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
a0b266d8170211d9f2a6f90ba9c889f0c1b6d1b6 04-Dec-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove deprecated setPrefConfigTable.

Safe once its only caller (in Android) has been updated.

BUG=skia:1874
R=reed@google.com

Review URL: https://codereview.chromium.org/99473004

git-svn-id: http://skia.googlecode.com/svn/trunk@12491 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
cd3b15ca6364a04b0eeeb4f89c7daa8aefe854c8 04-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed bad bitmap size crashes

There were 2 issues :
1 ) If the size of an SkBitmap's underlying SkPixelRef's alocated memory is too small to fit the bitmap, then the deserialization will now check this and set an error appropriately.
2 ) If a device fails to allocate its pixels, the device will be deleted and NULL will be returned to avoid attempting to draw on a bad device.

BUG=
R=senorblanco@chromium.org, reed@google.com, sugoi@google.com, halcanary@google.com, mtklein@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/92793002

git-svn-id: http://skia.googlecode.com/svn/trunk@12484 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
6e515d67d2365ecd05fb80762eeb76c55e81368c 04-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12477 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
cb08f986938eeeeb57f950c94fee120aca965787 03-Dec-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix 32/64 bit warnings on g++-4.2.

BUG=

Review URL: https://codereview.chromium.org/98343006

git-svn-id: http://skia.googlecode.com/svn/trunk@12470 2bbb7eff-a529-9590-31e7-b0007b416f81
olorPrivTest.cpp
55ca8244cc19c3067defa64f139521264d777eb0 03-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor FourByteInterps. Add 64-bit Fast version. Add tests.

Effect on benches (only _fast_ should be affected, and only on 64-bit):

Desktop (64-bit)
four_byte_interp_slow_255 NONRENDERING c 7.80 7.84 -0.04 -0.5%
four_byte_interp_slow_256 NONRENDERING c 7.38 7.36 +0.02 +0.3%
four_byte_interp_fast_256 NONRENDERING c 4.86 4.38 +0.48 +9.9%
four_byte_interp_fast_255 NONRENDERING c 5.80 5.16 +0.64 +11.0%

N5 (32-bit)
four_byte_interp_slow_256 NONRENDERING c 22.22 22.66 -0.44 -2.0%
four_byte_interp_fast_255 NONRENDERING c 22.22 22.22 +0.00 +0.0%
four_byte_interp_fast_256 NONRENDERING c 18.81 18.81 +0.00 +0.0%
four_byte_interp_slow_255 NONRENDERING c 22.42 22.42 +0.00 +0.0%

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/100923003

git-svn-id: http://skia.googlecode.com/svn/trunk@12468 2bbb7eff-a529-9590-31e7-b0007b416f81
olorPrivTest.cpp
b06e88dc6505412cc2b1a5f0bfb0f669465e1f8e 03-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for SkPathRef::CreateTransformedCopy bug

https://codereview.chromium.org/99423004/



git-svn-id: http://skia.googlecode.com/svn/trunk@12464 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
466310dbd3073add2ec934e336c30deaaf702eae 03-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move fIsOval from SkPath to SkPathRef

https://codereview.chromium.org/89123002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12463 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
ca316f576eaa925157575985eac425206308aaf4 03-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of r12450 (Move fIsOval from SkPath to SkPathRef)



git-svn-id: http://skia.googlecode.com/svn/trunk@12452 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
31f0ffc9c38b377c60979e18c6fd898ba08c8faf 03-Dec-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move fIsOval from SkPath to SkPathRef

https://codereview.chromium.org/89123002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12450 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d6bab0238655dbab24dfe92bd0b16b464310a8c7 02-Dec-2013 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r12427

git-svn-id: http://skia.googlecode.com/svn/trunk@12428 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
ashCacheTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
erializationTest.cpp
tringTest.cpp
5b39f5ba9c339d1e4dae391fee9ec1396feec180 02-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12427 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
ashCacheTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
erializationTest.cpp
tringTest.cpp
742058f0ca473dd871a1235a0f30b1736b045ec9 28-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Speed up GrResourceCache lookup by inlining GrBinHashKey comparisons

The GCC compilers for Android and Ubuntu do not seem to be able to
inline the memcmp operations on GrBinHashKey data. Write the comparisons
manually. Also shortcut GrBinHashKey::EQ to skip comparison when hashes
do not match.

Speeds up grresourcecache_find test on ARM and x86_64. Speeds up
grresourcecache_add on x86_64.

In order to test the change, moves ad hoc Gr unit tests from
src/gr_unittest.cpp to tests/GrUnitTests to be consistent with other
tests and enables GrUnitTests.

Fixes a regression from r2863 with where re-setting GrBinHashKey data
would not set the hash correctly. This should also improve the hash
function itself. The regression caused many of the hash operations be
no-ops. This is caught by the unit test.

Renames the comparison functions that GrHashTable needs from EQ, LT to
Equals, LessThan.

Renames GrTBinHashKey to GrBinHashKey. The GrTBinHashKey used to
forward comparison functions to an ENTRY template class, which would
extract the key and call back to the GrTBinHashKey. This would save
the user from writing one comparison function when comparison was done
with int ENTRY::compare(). There's no real benefit in this now. Also
this was used only for one class (GrTextureStripAtlas). The other use
in GrResourceKey was not actually using the provided "shortcut". The
new GrBinHashKey is not templated with the entry, rather just provides
== and < functions. The users of GrTHashTable provide the needed
functions now.

Adds explicit documentation of functions that are actually needed
GrTHashTable for the Key template. Adds SK_DEBUG guards according to
the contract.

R=bsalomon@google.com, mtklein@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/88113002

git-svn-id: http://skia.googlecode.com/svn/trunk@12426 2bbb7eff-a529-9590-31e7-b0007b416f81
rUnitTests.cpp
ashCacheTest.cpp
23d2cf9b072e75ef37e8eec466b811a9e2da643d 27-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Trying to add the same scaled image twice shouldn't assert.

This unbreaks bench_pictures --multi foo for me.

BUG=skia:1868
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/89293002

git-svn-id: http://skia.googlecode.com/svn/trunk@12422 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
a9a4b04a98f9990e4e11b164b2eed37416768f21 27-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Valgrind reports of test branching on uninitialized data.

Fixes reports like:
[07:10:01.235147] [ 71/188] (9) Serialization
[07:10:01.235186] ==20052== Thread 3:
[07:10:01.235223] ==20052== Conditional jump or move depends on uninitialised value(s)
[07:10:01.235259] ==20052== at 0x546632: SkRRect::setRectRadii(SkRect const&, SkPoint const*) (SkRect.h:426)
[07:10:01.735876] ==20052== by 0x546FB7: SkRRect::readFromMemory(void const*, unsigned long) (SkRRect.cpp:362)
[07:10:01.735965] ==20052== by 0x47F87F: Tests(skiatest::Reporter*) (SerializationTest.cpp:20)
[07:10:01.736007] ==20052== by 0x480367: skiatest::SerializationClass::onRun(skiatest::Reporter*) (SerializationTest.cpp:212)
[07:10:01.736048] ==20052== by 0x4881DA: skiatest::Test::run() (Test.cpp:109)
[07:10:01.736086] ==20052== by 0x482516: SkTestRunnable::run() (skia_test.cpp:155)
[07:10:01.736122] ==20052== by 0x6236E5: SkThreadPool::Loop(void*) (SkThreadPool.cpp:97)
[07:10:01.736158] ==20052== by 0x62DDB2: thread_start(void*) (SkThreadUtils_pthread.cpp:66)
[07:10:01.736192] ==20052== by 0x4E39E99: start_thread (pthread_create.c:308)
[07:10:01.736228] ==20052== by 0x6A5BCCC: clone (clone.S:112)
[07:10:01.736262] ==20052== Uninitialised value was created by a stack allocation
[07:10:01.736296] ==20052== at 0x47EC6A: Tests(skiatest::Reporter*) (SerializationTest.cpp:155)



git-svn-id: http://skia.googlecode.com/svn/trunk@12419 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
ca5bb87a31b8cfde73dfd7c554127ee9b3e1ab58 26-Nov-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> DM: write failed comparison mode .pngs one more level deep in the tree.

E.g. instead of having to compare
/tmp/dm/565/optimizations.png
vs.
/tmp/dm/replay/optimizations_565.png

it's now

/tmp/dm/565/optimizations.png
vs.
/tmp/dm/replay/565/optimizations.png

This lets working with skdiff go a lot more smoothly.

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/88773002

git-svn-id: http://skia.googlecode.com/svn/trunk@12402 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
11f392ed531f05e8de6b6af6ae607f90aeb080c6 26-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "remove kA1_Config, as it is no longer supported""

This reverts commit 36d712f2d4c5c79719280ad95523e6aaa88b068e.

BUG=
R=rmistry@google.com, mtklein@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/86483002

git-svn-id: http://skia.googlecode.com/svn/trunk@12392 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
mageDecodingTest.cpp
ec18ce7df6c8bed4d82a107edf6f28f554631f3e 26-Nov-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12389 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsSimplifyTest.cpp
72e7808d62c02f0371135b1c152bd00b73f62479 25-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "remove kA1_Config, as it is no longer supported"

This reverts commit 2d72d8b242eac6e9d30228f5b0a407236491c369.

git-svn-id: http://skia.googlecode.com/svn/trunk@12387 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
mageDecodingTest.cpp
4b413c8bb123e42ca4b9c7bfa6bc2167283cb84c 25-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFloatToScalar macro

BUG=
R=reed@google.com, djsollen@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/85463005

git-svn-id: http://skia.googlecode.com/svn/trunk@12385 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
lurTest.cpp
lipCubicTest.cpp
lipperTest.cpp
rawBitmapRectTest.cpp
rawTextTest.cpp
mageFilterTest.cpp
ayerDrawLooperTest.cpp
athTest.cpp
aintTest.cpp
arsePathTest.cpp
athMeasureTest.cpp
athOpsOpTest.cpp
athTest.cpp
ointTest.cpp
oundRectTest.cpp
ileGridTest.cpp
2a1f4464d150d2dc8c3fe2f39e9fb3503b7f4f54 25-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove kA1_Config, as it is no longer supported

BUG=
R=djsollen@google.com

Review URL: https://codereview.chromium.org/83093005

git-svn-id: http://skia.googlecode.com/svn/trunk@12384 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
mageDecodingTest.cpp
02352d14d4d2dc2e35d62f30674bf126eef26c26 25-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove more unused static functions

git-svn-id: http://skia.googlecode.com/svn/trunk@12379 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicReduceOrderTest.cpp
111417aae90beb459bcd77397270d67ca3731e69 25-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused static function

git-svn-id: http://skia.googlecode.com/svn/trunk@12378 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicReduceOrderTest.cpp
927b7028d44c46e9cbc18368f16ec2262d59d94d 25-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused reduce order code

BUG=

Review URL: https://codereview.chromium.org/85763002

git-svn-id: http://skia.googlecode.com/svn/trunk@12377 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadReduceOrderTest.cpp
28d219c5682af6dfacea2460b5ba2f9e98702de6 25-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix pathops quad line intersection

git-svn-id: http://skia.googlecode.com/svn/trunk@12374 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsSimplifyTest.cpp
6e223af090c6f17e3bcd48f049e592ca30a95c5c 22-Nov-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> I feel like my clang is especially sensitive to unused variables.

BUG=

Review URL: https://codereview.chromium.org/82913006

git-svn-id: http://skia.googlecode.com/svn/trunk@12369 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
866f4e34a943c115ac372c22123a1520aa5f9b06 21-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> optimize pathops coverage

Remove unused code from SkOpSegment.cpp and friends.
Add new tests exposed by coverage.
Fix a bug exposed by coverage -- removing the need to detect points that are nearby when intersecting.
Add gyp rule for building coverage flavor on Mac.

R=mtklein@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/75453003

git-svn-id: http://skia.googlecode.com/svn/trunk@12344 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
ad04eb49f5d3f324e6b85411c776d7466c1fef92 21-Nov-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkImageGenerator Interface

- Add SkDiscardablePixelRef class that uses SkDiscardableMemory and
a SkImageGenerator.

- Add SkDecodingImageGenerator class as an example of a
SkImageGenerator.

- Add DecodingImageGenerator unit test.

- Add SkBasicDiscardableMemory implmentation for unit tests only.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/74793011

git-svn-id: http://skia.googlecode.com/svn/trunk@12341 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
8b656c6db40a99af241e38eae853f887413040cc 21-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid printing draw target info to stderr while running unit tests

Change draw target dump function to return a SkString. Clients can do
whatever they want with the string.

BUG=skia:1837
R=caryclark@google.com, bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/72353003

git-svn-id: http://skia.googlecode.com/svn/trunk@12340 2bbb7eff-a529-9590-31e7-b0007b416f81
rDrawTargetTest.cpp
7d8013f3064cd202f5a2344a1ab1860fd7511bb3 20-Nov-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Changes to SkTDStackNester.

SkTDStackNester is a class used by PdfViewer to assist in saving
and restoring the PDF state. Clean up and test this class.

Add some documentation.

Add FIXME's where I have questions to resolve.

Fix a bug where fNestingLevel was not initialized.

Remove a commented out line of code copied over from
SkTDStack.

Rename SkTDStackNester::nests() to nestingLevel() and make it const.

Remove unnecessary predeclaration and friend declaration.

Remove index() (both const and non-const versions). They were
unused, return something that may not be expected (index from
the top, rather than from the bottom), and don't work to get any
elements in earlier Recs once the first one is full.

Report a warning if the nesting level goes above the maximum level,
or if we attempt to bring it below zero.

Prevent fNestingLevel from dropping below zero.

Add kUnusedObject_SkPdfIssue, and use it where appropriate.

Depends on https://codereview.chromium.org/64093009/

R=mtklein@google.com

Review URL: https://codereview.chromium.org/68843006

git-svn-id: http://skia.googlecode.com/svn/trunk@12328 2bbb7eff-a529-9590-31e7-b0007b416f81
DStackNesterTest.cpp
3495c9118dc4d47217bcb21ae9b67f5b47b73162 20-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> GpuTest::GetContext() doesn't exist.

BUG=
R=bsalomon@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/76143003

git-svn-id: http://skia.googlecode.com/svn/trunk@12320 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
701b40543d5d124dfa1e59b051cba9d2aaf61670 18-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix DocumentTest/SkDocument memory leaks

https://codereview.chromium.org/72833002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12302 2bbb7eff-a529-9590-31e7-b0007b416f81
ocumentTest.cpp
a1a097ee814d05a92487d85db8ad02e1d852fd6f 14-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> increase coverage of SkPath.cpp, remove unused code

Using Mike Klein's excellent coverage tool, increase the
unit testing of SkPath.cpp from 70% to 95%.

Along the way, determined that these functions were not
maintained or used:

SkPath::pathTo
SkPath::contains

as well as a large block of SkPath::cheapGetDirection().

Changed SkPath::validate() to permit infinities in
the path data points.

Fixed errors in preserving direction.
Fixed error setting direction when convexity is unknown.

Added missing conic to moveTo only detector.

BUG=
R=bsalomon@google.com, reed@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/65493004

git-svn-id: http://skia.googlecode.com/svn/trunk@12291 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
cb3b615af712fc71b19b86211c1d083430114d7e 14-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Address some more valgrind issues

R=borenet@google.com

Review URL: https://codereview.chromium.org/59713010

git-svn-id: http://skia.googlecode.com/svn/trunk@12286 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
ontHostStreamTest.cpp
mageFilterTest.cpp
algrind.supp
0a657bbc2c6fc9daf699942e023050536d5ec95f 13-Nov-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@12108

Change-Id: Ia710b27d97e938df06014b7b61a3767bd3be1eb5
AClipTest.cpp
RGBImageEncoderTest.cpp
ndroidPaintTest.cpp
itmapCopyTest.cpp
itmapHasherTest.cpp
litRowTest.cpp
lurTest.cpp
achedDecodingPixelRefTest.cpp
anvasStateTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
olorFilterTest.cpp
olorTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
eviceLooperTest.cpp
ocumentTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
ynamicHashTest.cpp
rrorTest.cpp
illPathTest.cpp
itsInTest.cpp
latDataTest.cpp
ontHostTest.cpp
ontMgrTest.cpp
ontNamesTest.cpp
rontBufferedStreamTest.cpp
LProgramsTest.cpp
ifTest.cpp
puBitmapCopyTest.cpp
puColorFilterTest.cpp
rMemoryPoolTest.cpp
radientTest.cpp
ashCacheTest.cpp
mageDecodingTest.cpp
mageFilterTest.cpp
nfRectTest.cpp
pegTest.cpp
ListTest.cpp
ayerDrawLooperTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emoryTest.cpp
essageBusTest.cpp
nceTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicIntersectionTestData.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsDQuadTest.cpp
athOpsDTriangleTest.cpp
athOpsExtendedTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadIntersectionTestData.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsThreadedCommon.cpp
athOpsThreadedCommon.h
athOpsTypesTest.cpp
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
ixelRefTest.cpp
remulAlphaRoundTripTest.cpp
TreeTest.cpp
andomTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
egionTest.cpp
oundRectTest.cpp
erializationTest.cpp
haderImageFilterTest.cpp
haderOpacityTest.cpp
k64Test.cpp
kpSkGrTest.cpp
ortTest.cpp
tringTest.cpp
urfaceTest.cpp
est.h
estClassDef.h
ileGridTest.cpp
oUnicode.cpp
ypeface.cpp
nitTestTest.cpp
tilsTest.cpp
ArrayTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
algrind.supp
e293005bd459934c3f389f9b05d6294c75f8a6e7 13-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> "Fix" another crash in DeferredCanvasTest on valgrind bot

https://codereview.chromium.org/71463003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12265 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
09a5383adc59c3798f6f6e851f46320393b6c4b8 12-Nov-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Hide implementation details: SkFrontBufferedStream

R=reed@google.com

Review URL: https://codereview.chromium.org/25581002

git-svn-id: http://skia.googlecode.com/svn/trunk@12256 2bbb7eff-a529-9590-31e7-b0007b416f81
rontBufferedStreamTest.cpp
5fa42d1621c74d206fe746ec2c5b7962a97cf6d1 12-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> "Fix" another crash on valgrind bot

https://codereview.chromium.org/70463002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12248 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
d6bea606c6930b3f7a8093b9a7bb78c7e3efb287 12-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Silence another valgrind leak

https://codereview.chromium.org/68523006/



git-svn-id: http://skia.googlecode.com/svn/trunk@12236 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
3bddb38e6468c6294e40e5307f05e6b56bdd6a6c 12-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix crash in tests on valgrind bot

https://codereview.chromium.org/63543005/



git-svn-id: http://skia.googlecode.com/svn/trunk@12234 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
6acc8f473d7b301736b33482e45fdaa98e62bbae 11-Nov-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add another FontConfig suppression to valgrind suppressions

https://codereview.chromium.org/69403002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12226 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
ed000840d4e56336858752994bad5d491e4ed4a5 09-Nov-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12208 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsSkpTest.cpp
11e5b972a984c7b4e09ba4dfeacc7bd805107c5a 08-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add sk_float_rsqrt with SSE + NEON fast paths.

Current numbers:

N4:
running bench [640 480] math_fastIsqrt NONRENDERING: cmsecs = 3.12
running bench [640 480] math_slowIsqrt NONRENDERING: cmsecs = 4.82
running bench [640 480] math_sk_float_rsqrt NONRENDERING: cmsecs = 1.99

Desktop:
running bench [640 480] math_fastIsqrt NONRENDERING: cmsecs = 0.89
running bench [640 480] math_slowIsqrt NONRENDERING: cmsecs = 0.94
running bench [640 480] math_sk_float_rsqrt NONRENDERING: cmsecs = 0.09

Haven't found any other benches where this is a significant effect yet.

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/60083014

git-svn-id: http://skia.googlecode.com/svn/trunk@12203 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
8f457e3230f1a4ce737f512ffbb5c919b8d02407 08-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding error checks to SkRBuffer

BUG=
R=robertphillips@google.com, bsalomon@google.com, reed@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/61913002

git-svn-id: http://skia.googlecode.com/svn/trunk@12202 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
9901727f213e459901a175c119b2fad8816002a0 08-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix stale assert in GrDrawTarget::print

Fix stale assert in GrDrawTarget::print.

R=bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/66333002

git-svn-id: http://skia.googlecode.com/svn/trunk@12201 2bbb7eff-a529-9590-31e7-b0007b416f81
rDrawTargetTest.cpp
c4a4f9db6ba448c27b2c99ee1b1cbea005596044 08-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix compile error

git-svn-id: http://skia.googlecode.com/svn/trunk@12200 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsSkpTest.cpp
1510726d6044119fab42a887d46ba922b890531d 08-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix line intersection

git-svn-id: http://skia.googlecode.com/svn/trunk@12197 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsLineIntersectionTest.cpp
athOpsSkpTest.cpp
42feaaf0a5fbb508b237d5c844c484a1a3b0c865 08-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> use quads for mixed radius rrects

Create a specialized version of adding a pair of corner quads
that avoids the overhead of the full arc machinery.

This is on the way to changing Chrome to calling Skia directly to create fully general round rects rather than rolling their own.

R=robertphillips@google.com, reed@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/60203002

git-svn-id: http://skia.googlecode.com/svn/trunk@12190 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
4db85b50c0367461787ec2d7f252799aeac0b1c3 30-Oct-2013 Leon Scroggins III <scroggo@google.com> Use nine patch drawing for blurry round rectangles

Cherry pick of https://codereview.chromium.org/52703003/ in Skia.

Add SkRRect::transform.

Much like SkPath::transform, it transforms an SkRRect based on an
SkMatrix. Unlike SkPath::transform, it will fail for matrices that
contain perspective or skewing.

Cherry pick of https://codereview.chromium.org/48623006/ in Skia.

Add ability to ninepatch blurred rounded rectangle

Speed up drawing large blurry round rectangles by converting them to
nine patches.

SkDraw:
Add drawRRect.

SkBitmapDevice:
Call SkDraw::drawRRect instead of converting SkRRect to an SkPath.

SkMaskFilter/SkBlurMaskFilter:
Create a nine patch of a blurred round rect and draw it instead of
drawing the entire thing.

SkPDFDevice:
Override drawRRect to perform the old behavior in
SkBitmapDevice::drawRect.

BUG:11174385
Change-Id: I96e6bf50c1418f7df70681afee6e25be40615497
oundRectTest.cpp
1f0121af495e5a70ecff2521729b7749c81a20b2 06-Nov-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> New SkRTConf macro SK_CONF_TRY_SET: no complaint on missing configuration

SK_CONF_TRY_SET() is like SK_CONF_SET(), but doesn't complain if
confname can't be found. This is useful if the SK_CONF_DECLARE is
inside a source file whose linkage is dependent on the system.

Internally to the SkRTConf system, SkRTConfRegistry::set() was given
an additional parameter controling wanrings.

A new RuntimeConfig unit test was introduced. It should run silently.
In the future, it should be expanded to cover all of the SkRTConf
functionality.

(For example, the images.jpeg.suppressDecoderWarnings variable is
defined and used only in SkImageDecoder_libjpeg.cpp, but on MacOS, we
use Core Graphics via SkImageDecoder_CG.cpp - SkImageDecoder_libjpeg
is never linked in. The same is true of the Windows Imaging Component
on Windows.)

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/54503007

git-svn-id: http://skia.googlecode.com/svn/trunk@12155 2bbb7eff-a529-9590-31e7-b0007b416f81
untimeConfigTest.cpp
6e3e42296b0d7a93325146d9c9a7e23ef90760fe 06-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Break up SkLazyPixelRef functionally into class hierarchy.

The reason for this CL is to allow greater decoder flexibility.
Chrome currently uses its own decoding functions. These allow for
greater flexibility in dealing with images with multiple frames or
partial data. The DecodeProc function was not flexible enough to
handle these. Instead of asking the decoder to squeeze everything
into the DecodeProc, we now ask the downstream library to inherit from
SkCachingPixelRef. If WebKit's LazyDecodingPixelRef is re-tooled to
inherit from SkCachingPixelRef, then it can make use of Skia's caching
ability while still allowing it to deal with multiple frames, scaling,
subsetting, and partial data.

- The abstract SkCachingPixelRef class handles caching the decoded
data in a SkScaledImageCache. This class relies on the virtual
functions onDecodeInfo() and onDecode() to do the actual decoding
of data.

- The SkLazyCachingPixelRef class is derived from SkCachingPixelRef.
It provides an implementation of onDecodeInfo() and onDecode() in
terms of calls to a SkBitmapFactory::DecodeProc function. It also
provides an Install() static method which installs a new
SkLazyCachingPixelRef into a SkBitmap.

SkLazyCachingPixelRef exists for two reasons: to test
SkCachingPixelRef within Skia and as an example for downstream
developers to make their own classes that inherit from
SkCachingPixelRef.

- The CachedDecodingPixelRefTest was updated to test the
SkLazyCachingPixelRef class and indirectly the SkCachingPixelRef
class.

BUG=
R=reed@google.com, scroggo@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/54203006

git-svn-id: http://skia.googlecode.com/svn/trunk@12149 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
20e3cd2c9fbc049eae8bcedc591c2cc8d4bed656 05-Nov-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkRRect::transform.

Much like SkPath::transform, it transforms an SkRRect based on an
SkMatrix. Unlike SkPath::transform, it will fail for matrices that
contain perspective or skewing.

Required by a future change (https://codereview.chromium.org/48623006)
to speed up drawing large blurry rounded rectangles by using ninepatches.

TODO: This could easily support 90 degree rotations, if desired.

BUG=https://b.corp.google.com/issue?id=11174385
R=reed@google.com, robertphillips@google.com

Review URL: https://codereview.chromium.org/52703003

git-svn-id: http://skia.googlecode.com/svn/trunk@12132 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
4faa869cdabbdcf4867118b4a1272296baaeeb52 05-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.

BUG=
R=reed@google.com, mtklein@google.com, senorblanco@chromium.org

Committed: https://code.google.com/p/skia/source/detail?r=12114

Committed: https://code.google.com/p/skia/source/detail?r=12119

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/41253002

git-svn-id: http://skia.googlecode.com/svn/trunk@12130 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athTest.cpp
erializationTest.cpp
d3e5842db0cb169e10d6da1e62c94ba5cf182bb4 05-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid re-rendering stencil clip for every draw with reducable clip stack

Fixes the cases where clip stack reduction would cause clip to be
re-rendered to stencil for each draw call. This causes unneeded
slowdown.

Stencil cache would not be used because the clip stack generation id communicated
by the clip stack element list would be invalid. This happended due to

a) clip stack reduction creating new elements in the element list.

b) purging logic removing the generation id, but reduction logic
selecting already purged element, and thus the generation id, as
the representative state of the clip.

Cases of a) where reduction would flatten the stack to a single new
element were fixed by assigning the generation id of the top-most
element of the clip stack as the generation id of the new
element. This is not strictly minimal, but enables more caching than
using invalid id.

Cases of a) where reduction would substitute a stack element with a
new element the generation id of the substituted element is used.

The b) part was fixed by removing the purging logic. It was not
exactly correct, as the previously purged states were actually
used. The purging was not used for anything.

Changes SkClipStack API to highlight that invalid generation id is
never returned by SkClipStack. Empty stacks are wide open. Changes the
clients to reflect this.

Fixes a crash when not passing anti-alias out parameter to
GrReducedClip::ReduceClipStack. The crash is not exercised in the
current code.

Committed: http://code.google.com/p/skia/source/detail?r=12084

R=bsalomon@google.com, robertphillips@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/48593003

git-svn-id: http://skia.googlecode.com/svn/trunk@12127 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
lipStackTest.cpp
12a23866fe18e800da1d361d000a359ea36696eb 04-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream."

This reverts commit 6bc22e8ef1ea70a1b58409aa21254358c50f149a.

git-svn-id: http://skia.googlecode.com/svn/trunk@12124 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athTest.cpp
erializationTest.cpp
b48a59ae81a35642fe715a5cdd6fd758b652bff3 04-Nov-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.

BUG=
R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=12114

Review URL: https://codereview.chromium.org/41253002

git-svn-id: http://skia.googlecode.com/svn/trunk@12119 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athTest.cpp
erializationTest.cpp
eb221268ab1067af7c48e04a75147d4bcca87191 04-Nov-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r12114 due to https://code.google.com/p/skia/issues/detail?id=1794 ('Assertion failures on various buildbots as of r12114')



git-svn-id: http://skia.googlecode.com/svn/trunk@12115 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athTest.cpp
erializationTest.cpp
305f78e8c18a26b7ead11758d6a4fa0519932cca 04-Nov-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/41253002

git-svn-id: http://skia.googlecode.com/svn/trunk@12114 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athTest.cpp
erializationTest.cpp
f54ad6f488845d0fc27734984e39185e15370fbc 02-Nov-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12101 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicQuadIntersectionTest.cpp
athOpsDTriangleTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsTypesTest.cpp
kpSkGrTest.cpp
a2bbc6e19d5332e81784e582c290cc060f40c4c7 01-Nov-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pathops work in progress

BUG=

Review URL: https://codereview.chromium.org/52653002

git-svn-id: http://skia.googlecode.com/svn/trunk@12089 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsDQuadTest.cpp
athOpsDTriangleTest.cpp
athOpsExtendedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsThreadedCommon.h
athOpsTypesTest.cpp
kpSkGrTest.cpp
f0784bde753feaff601f703089872fc1af265328 01-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Avoid re-rendering stencil clip for every draw with reducable clip stack"

This reverts commit 92a7d4bf6a371f1f864154be902e8d86938e560b.

Revert "fix mac 10.6 build"

This reverts commit 114cd1a9f2734aaed6914718814364811b78bd7f.

BUG=

Review URL: https://codereview.chromium.org/54543008

git-svn-id: http://skia.googlecode.com/svn/trunk@12087 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
lipStackTest.cpp
eea3ab78e9f1680ada9bd471badc975e4d3cf8be 01-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix mac 10.6 build
- double -> float implicit conversion (for literals like 1.3)
- locally defined (and named) struct

R=scroggo@google.com

Review URL: https://codereview.chromium.org/56103002

git-svn-id: http://skia.googlecode.com/svn/trunk@12086 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
679eb674fc064993d534df4d48a4ddaff4e33e06 01-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid re-rendering stencil clip for every draw with reducable clip stack

Fixes the cases where clip stack reduction would cause clip to be
re-rendered to stencil for each draw call. This causes unneeded
slowdown.

Stencil cache would not be used because the clip stack generation id communicated
by the clip stack element list would be invalid. This happended due to

a) clip stack reduction creating new elements in the element list.

b) purging logic removing the generation id, but reduction logic
selecting already purged element, and thus the generation id, as
the representative state of the clip.

Cases of a) where reduction would flatten the stack to a single new
element were fixed by assigning the generation id of the top-most
element of the clip stack as the generation id of the new
element. This is not strictly minimal, but enables more caching than
using invalid id.

Cases of a) where reduction would substitute a stack element with a
new element the generation id of the substituted element is used.

The b) part was fixed by removing the purging logic. It was not
exactly correct, as the previously purged states were actually
used. The purging was not used for anything.

Changes SkClipStack API to highlight that invalid generation id is
never returned by SkClipStack. Empty stacks are wide open. Changes the
clients to reflect this.

Fixes a crash when not passing anti-alias out parameter to
GrReducedClip::ReduceClipStack. The crash is not exercised in the
current code.

R=bsalomon@google.com, robertphillips@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/48593003

git-svn-id: http://skia.googlecode.com/svn/trunk@12084 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
lipStackTest.cpp
2bd8b8100529c96c81c30f749f672f4caf775b04 01-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move SkImage::ColorType into SkColorType

objective -- move clients over to SkImage

tasks
- use SkImageInfo instead of SkBitmap::Config
- add support for colortables to SkImage
- add drawImage to SkCanvas
- return SkImage from readPixels

This CL works towards the first task

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/54363008

git-svn-id: http://skia.googlecode.com/svn/trunk@12077 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
urfaceTest.cpp
025128811219dc45fd99b6c4d1d14f833cf7a26e 31-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding size parameter to read array functions

In some cases, the allocated array into which the data will be read is using getArrayCount() to allocate itself, which should be safe, but some cases use fixed length arrays or compute the array size before reading, which could overflow if the stream is compromised.

To prevent that from happening, I added a check that will verify that the number of bytes to read will not exceed the capacity of the input buffer argument passed to all the read...Array() functions.

I chose to use the byte array for this initial version, so that "size" represents the same value across all read...Array() functions, but I could also use the element count, if it is preferred.

Note : readPointArray and writePointArray are unused, so I could also remove them

BUG=
R=reed@google.com, mtklein@google.com, senorblanco@chromium.org

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/37803002

git-svn-id: http://skia.googlecode.com/svn/trunk@12058 2bbb7eff-a529-9590-31e7-b0007b416f81
erializationTest.cpp
4469938e92d779dff05e745559e67907bbf21e78 31-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning""

This reverts commit 1e787c38fa71f2a21fd728f1b1d620b9b09b0d3d.

BUG=

Review URL: https://codereview.chromium.org/54603004

git-svn-id: http://skia.googlecode.com/svn/trunk@12057 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
atrix44Test.cpp
athTest.cpp
haderImageFilterTest.cpp
riter32Test.cpp
fermodeTest.cpp
6fcbfcead5dc1b61fa5b4c139a1a3714e8c58091 31-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning"

This reverts commit 1d22c4aaf9d8f053f25194a1ed74b137bfb19497.

git-svn-id: http://skia.googlecode.com/svn/trunk@12056 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
atrix44Test.cpp
athTest.cpp
haderImageFilterTest.cpp
riter32Test.cpp
fermodeTest.cpp
081560e3abe25c4821b79ca1465f4dbd371c4b5c 31-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning

BUG=
R=robertphillips@google.com, senorblanco@chromium.org, vandebo@chromium.org

Review URL: https://codereview.chromium.org/51033004

git-svn-id: http://skia.googlecode.com/svn/trunk@12055 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
atrix44Test.cpp
athTest.cpp
haderImageFilterTest.cpp
riter32Test.cpp
fermodeTest.cpp
1ab9f737f000e530f0c7713c8fad282f39e26efe 30-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkPathRef gen id for SkPath::getGenerationID

R=mtklein@google.com, robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/49693002

git-svn-id: http://skia.googlecode.com/svn/trunk@12029 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
4db592c4085afed2be27a208d778f9ee13e671ab 30-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove contains(x,y) for rects and rrects ... not well defined, and unused

BUG=
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/51953003

git-svn-id: http://skia.googlecode.com/svn/trunk@12022 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
b77f0f4ae560e97cc4cd2758752d955549017c3c 30-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12013 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
7585479202f1fe0b6a0a9dcd27697b56154706f4 29-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow SkLazyPixelRef to use SkScaledImageCache

- SkScaledImageCache:
- Add new FindAndLock/AddAndLock variants that work well with
SkLazyPixelRefs (take width, height, generation_id).
- Add static versions of these new variants.

- SkLazyPixelRef:
- If NULL passed in as SkImageCache* in the constructor, it will
now default to using the static SkScaledImageCache methods to
cache decoded images.
- If (fImageCache==NULL), the default allocator can be changed
with the setAllocator method. If (fImageCache!=NULL), the
SkImageCache handles allocation.

- CachedDecodingPixelRefTest to test the new functionality.

BUG=
R=scroggo@google.com, mtklein@google.com, reed@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/37343002

git-svn-id: http://skia.googlecode.com/svn/trunk@12006 2bbb7eff-a529-9590-31e7-b0007b416f81
achedDecodingPixelRefTest.cpp
f9a2759d9489d722b6fd93bfcbd8fd70a2dfba37 29-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> tests: Provide a default resources path.

This is cuts down noise when running from skia/trunk, where this is the right
path to look in.

BUG=
R=epoger@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/51263002

git-svn-id: http://skia.googlecode.com/svn/trunk@12005 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
9ef0426e7c126f6ad6ba833d4543b92a197c95af 29-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't reuse scratch textures patch

https://codereview.chromium.org/24222004/



git-svn-id: http://skia.googlecode.com/svn/trunk@11997 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
b2e9fa529862bd1f7b983a17b3c72acfb3d0367d 27-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up the GrTHashTable API.

removeAt() and slowFindIndex() were only used by GrFontCache, and didn't really need to exist: they can be replaced by a simple remove() call. This new code should actually be faster; slowFindIndex() was O(N), and this should be O(lg N).

BUG=
R=bsalomon@google.com, jvanverth@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/43383006

git-svn-id: http://skia.googlecode.com/svn/trunk@11973 2bbb7eff-a529-9590-31e7-b0007b416f81
ashCacheTest.cpp
72b8cb2320dddc6e006a2857746014e607e9e151 25-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> onCharsToGlyphs to handle non-bmp on Mac.

CTFontGetGlyphsForCharacters is a strange API for non-bmp code points.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/43463005

git-svn-id: http://skia.googlecode.com/svn/trunk@11965 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
83ba103ff320c7593f460529659dbf04c894661c 25-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix warnings as errors from r11960.

git-svn-id: http://skia.googlecode.com/svn/trunk@11961 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
0fc8f1f822b67a56c72dc574693ec439c47680e3 25-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable charsToGlyphs test until Mac can pass.

git-svn-id: http://skia.googlecode.com/svn/trunk@11960 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
7dc4fd03136a2975be8a4da0069a627cd7d542e8 25-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11959 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
3c996f8a15e5d8fada9550d978e9b5344b81d276 24-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement charToGlyph on remaining ports.

R=reed@google.com

Review URL: https://codereview.chromium.org/22859070

git-svn-id: http://skia.googlecode.com/svn/trunk@11955 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
mageDecodingTest.cpp
50a3043194cf278a74ff51c33c6cdb52cbe1f8f9 24-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> We want to give SkPixelRef a way to signal over to GrResourceCache that it's become pointless to keep around textures based on that SkPixelRef when its pixels change, so that it can be a good citizen and free those textures.

This adds an invalidation listener mechanism to SkPixelRef to let it send this message while still staying ignorant of who's listening.

These messages are tricky to deliver. The SkPixelRefs they originates from and the GrResourceCaches they ultimately end up at may be on different threads; neither class is threadsafe; their object lifetimes are totally independent; it's a many-senders-to-many-receivers relation; and neither codebase should really know about the other.

So I've added a per-message-type global message bus to broadcast messages to threadsafe inboxes. Anyone can post() a message, which will show up in all the inboxes of that type, read whenever the inbox's owner calls poll(). The implementation is _dumb_; it can be improved in several dimensions (inbox size limits, lock-free message delivery) if we find the need.

I took some care to make sure not to send the invalidation message for any SkPixelRef that's sharing a generation ID with another SkPixelRef.

BUG=
R=bsalomon@google.com, scroggo@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/26734003

git-svn-id: http://skia.googlecode.com/svn/trunk@11949 2bbb7eff-a529-9590-31e7-b0007b416f81
essageBusTest.cpp
ixelRefTest.cpp
381010e5501a8d681f8f059486da74f4924f81e5 24-Oct-2013 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Expose SkPicture::willPlayBackBitmaps()

This returns true if (1) the picture has finished recording and
(2) this picture or any picture drawn into it refers to any bitmaps.
It allows clients doing complicated manipulations of the picture to
early-out when there are no bitmaps present.

BUG=303281
R=reed@google.com



git-svn-id: http://skia.googlecode.com/svn/trunk@11935 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
1f81fd6546c111e21bc665657e976b9d842192df 23-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SK_ONCE for SkData and SkPathRef

Adds SK_ONCE_FRIEND, to allow SK_DEF_ONCE code to be friends with a class. This had to go in include/core to be visible to headers there.

BUG=
R=reed@google.com, bungeman@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/26491003

git-svn-id: http://skia.googlecode.com/svn/trunk@11914 2bbb7eff-a529-9590-31e7-b0007b416f81
nceTest.cpp
a34995e18b1f0a7d8c9f23451718bb30ff0105b0 23-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkColorFilter as a GrGLEffect

Adds GrEffect::willUseInputColor() which indicates whether or not the
input color affects the output of the effect. This is needed for
certain Xfermodes, such as kSrc_Mode. For these modes the color filter
will not use the input color.

An effect with GrEffect::willUseInputColor() true will cause all color
or coverage effects before it to be discarded, as their computations
cannot affect the output. In these cases program is marked as having
white input color.

This fixes an assert when Skia is compiled in a mode that prefers
using uniforms instead of attributes for constants. (Flags
GR_GL_USE_NV_PATH_RENDERING or GR_GL_NO_CONSTANT_ATTRIBUTES). Using
attributes hides the problem where the fragment shader does not need
input color for color filters that ignore DST part of the filter. The
assert would be hit when uniform manager tries to bind an uniform which
has been optimized away by the shader compiler.

Adds specific GrGLSLExpr4 and GrGLSLExpr1 classes. This way the GLSL
expressions like "(v - src.a)" can remain somewhat readable in form of
"(v - src.a())". The GrGLSLExpr<typename> template implements the
generic functionality, GrGLSLExprX is the specialization that exposes
the type-safe interface to this functionality.

Also adds operators so that GLSL binary operators of the form
"(float * vecX)" can be expressed in C++. Before only the equivalent
"(vecX * float)" was possible. This reverts the common blending
calculations to more conventional order, such as "(1-a) * c" instead of
"c * (1-a)".

Changes GrGLSLExpr1::OnesStr from 1 to 1.0 in order to preserve the
color filter blending formula string the same (with the exception of
variable name change).

Shaders change in case of input color being needed:
- vec4 filteredColor;
- filteredColor = (((1.0 - uFilterColor.a) * output_Stage0) + uFilterColor);
- fsColorOut = filteredColor;
+ vec4 output_Stage1;
+ { // Stage 1: ModeColorFilterEffect
+ output_Stage1 = (((1.0 - uFilterColor_Stage1.a) * output_Stage0) + uFilterColor_Stage1);
+ }
+ fsColorOut = output_Stage1;

Shaders change in case of input color being not needed:
-uniform vec4 uFilterColor;
-in vec4 vColor;
+uniform vec4 uFilterColor_Stage0;
out vec4 fsColorOut;
void main() {
- vec4 filteredColor;
- filteredColor = uFilterColor;
- fsColorOut = filteredColor;
+ vec4 output_Stage0;
+ { // Stage 0: ModeColorFilterEffect
+ output_Stage0 = uFilterColor_Stage0;
+ }
+ fsColorOut = output_Stage0;
}

R=bsalomon@google.com, robertphillips@google.com, jvanverth@google.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/25023003

git-svn-id: http://skia.googlecode.com/svn/trunk@11912 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
puColorFilterTest.cpp
5237b7fb0e3535d284ca18849d532f298a5e85ed 22-Oct-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a test warning on some linux machines

R=sugoi@google.com

Review URL: https://codereview.chromium.org/34803004

git-svn-id: http://skia.googlecode.com/svn/trunk@11910 2bbb7eff-a529-9590-31e7-b0007b416f81
ocumentTest.cpp
7ce564cccb246ec56427085872b2e1458fe74bd1 22-Oct-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "If the path is a rect, call drawRect to raster the geometry in SkCanvas::drawPath to get better performance."

This reverts commit r11904

Review URL: https://codereview.chromium.org/35543002

git-svn-id: http://skia.googlecode.com/svn/trunk@11909 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
8c908273bb21e3f4141c86312f8a3ef5f90ebe9f 22-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for SkDocument

R=reed@google.com, vandebo@chromium.org

Author: edisonn@google.com

Review URL: https://codereview.chromium.org/33423002

git-svn-id: http://skia.googlecode.com/svn/trunk@11907 2bbb7eff-a529-9590-31e7-b0007b416f81
ocumentTest.cpp
ad254fee73ad70a45acba69dccb9b65f88c3a92a 22-Oct-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> If the path is a rect, call drawRect to raster the geometry in SkCanvas::drawPath to get better performance.

Committed: http://code.google.com/p/skia/source/detail?r=11842

R=bsalomon@google.com

Review URL: https://codereview.chromium.org/23484007

git-svn-id: http://skia.googlecode.com/svn/trunk@11904 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
4c2af7407818f6f2d4e4b57da6bbca16524e04b9 21-Oct-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GrTHashCache -> GrTHashTable

The class is Table, but the file's Cache. That's confusing.

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/32523004

git-svn-id: http://skia.googlecode.com/svn/trunk@11898 2bbb7eff-a529-9590-31e7-b0007b416f81
ashCacheTest.cpp
4b7d6730898abc9e02d1e12c2fd732945f4c1ab4 21-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> More clang warning fixes.

Mostly unused functions and variables removed.

BUG=None
TEST=ninja -C out/Debug most
ninja -C out/Release most

R=bsalomon@google.com, caryclark@google.com, robertphillips@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/27933002

git-svn-id: http://skia.googlecode.com/svn/trunk@11884 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
anvasTest.cpp
lipStackTest.cpp
olorTest.cpp
athOpsAngleTest.cpp
8e919add406c5d20918a7f0ca811317312e6ce67 21-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix GrProgramsTest to not generate tests with too many TexCoord references

Make GrProgramsTest check how many texture coordinate sets are
available and select random effects up until the amount runs out.

Otherwise, following effect sequence would fail the shader compilation
when Skia is compiled with nv_path_rendering on (eg. when fixed
function codepath is used):
* Stage 0: TextureDomain (1 texcoord)
* Stage 1: Convolution (1 texcoord)
* Stage 2: Bitmap Alpha Threshold (2 texcoords)
* Stage 3: DisplacementMap (2 texcoords)
* Stage 4: Config Conversion (1 texcoords)
* Stage 5: Two-Point Conical Gradient (2 texcoords)

This would use more texture coordinate sets than 8, which is fairly
common amount currently.

R=bsalomon@google.com, cdalton@nvidia.com

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/32403002

git-svn-id: http://skia.googlecode.com/svn/trunk@11881 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
383a697692cf46951fd451f6f4c3d03634a6a1cb 21-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> store SkAlphaType inside SkBitmap, on road to support unpremul

BUG=
R=bsalomon@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/25275004

git-svn-id: http://skia.googlecode.com/svn/trunk@11877 2bbb7eff-a529-9590-31e7-b0007b416f81
RGBImageEncoderTest.cpp
itmapCopyTest.cpp
itmapHasherTest.cpp
eferredCanvasTest.cpp
haderOpacityTest.cpp
c2cc1dbe818c8a5a699fbe18c4fc79b9d93daa94 17-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r11842 (call drawRect to try GrAARectRenderer if the path is a rect - https://codereview.chromium.org/23484007) due to changes to the following GM images:

inverse_paths
pathopsinverse




git-svn-id: http://skia.googlecode.com/svn/trunk@11845 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
521a46750d87d3d206617d05d917ad6aad242ca4 17-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> If the path is a rect, call drawRect to raster the geometry in SkCanvas::drawPath to get better performance.

R=bsalomon@google.com, robertphillips@google.com, reed@google.com

Author: yunchao.he@intel.com

Review URL: https://codereview.chromium.org/23484007

git-svn-id: http://skia.googlecode.com/svn/trunk@11842 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
e9cd27d4a3c92393cc6c79d4d6f93d266411d95e 16-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Third wave of Win64 warning cleanup

https://codereview.chromium.org/27487003/



git-svn-id: http://skia.googlecode.com/svn/trunk@11817 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
ictureTest.cpp
8b66abb9bc78fd031334f565c9394f4fdc99811b 16-Oct-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove support for SK_CROP_RECT_IS_INT, now that it is no longer used in Blink or Chrome.

BUG=
R=reed@google.com, reed

Review URL: https://codereview.chromium.org/27521002

git-svn-id: http://skia.googlecode.com/svn/trunk@11812 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
f32322b9cefd950013ead6f914678580eff20b5b 16-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add disabled tests, in pref for experimental isRect behavior

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/27513003

git-svn-id: http://skia.googlecode.com/svn/trunk@11810 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
353482251e61971a8cf3a60bbb6910f482be634f 16-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> force readbuffer clients to use specialized readFoo for flattenables

BUG=
R=mtklein@google.com

Review URL: https://codereview.chromium.org/26702002

git-svn-id: http://skia.googlecode.com/svn/trunk@11803 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
472629190eb3c8220742c584e19f3a07b2d09c8c 16-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11800 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
athTest.cpp
2f92966c6a2419023570d5951a4234cdaebcc3c9 15-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkDataTable from SkFlattenable hierarchy.

As far as I can tell, we never really needed this. No code outside the unit
test calls this code.

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/26223009

git-svn-id: http://skia.googlecode.com/svn/trunk@11792 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
23d0ab724129a517ea1bc6cf60830169b524f3bf 15-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> return false if we can't scale, to force us to try to lock the original and then proceed

BUG=
R=wangxianzhu@chromium.org

Review URL: https://codereview.chromium.org/27382002

git-svn-id: http://skia.googlecode.com/svn/trunk@11789 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
cef5bb4e424344769493886b700f6013add4ad48 15-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> test for failing pixelref (crashes, so disable for now)

test for a pixelref that fails to lock

BUG=

Review URL: https://codereview.chromium.org/26539012

git-svn-id: http://skia.googlecode.com/svn/trunk@11787 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
b58ba8912ab1a372eb60ab111f477b915eb3da4d 15-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> account for inverse-paths when we prealloc storage in the rgn-builder

test inversepath->rgn

BUG=
R=caryclark@google.com

Review URL: https://codereview.chromium.org/27222005

git-svn-id: http://skia.googlecode.com/svn/trunk@11776 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
77658b560067ec97a682eba198de9a1b37186c34 15-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> meant to DISABLE this test

git-svn-id: http://skia.googlecode.com/svn/trunk@11775 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
cc8be77bc2371bba2ebb43102fa7a5ebc098a856 15-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for https://code.google.com/p/skia/issues/detail?id=1706

BUG=

Review URL: https://codereview.chromium.org/27344002

git-svn-id: http://skia.googlecode.com/svn/trunk@11774 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
4979f32cd3fd29db5f23712f0aea3cf01a5c695d 14-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkDataSet, and just store a key/value in SkAnnotation

BUG=
R=mtklein@google.com

Review URL: https://codereview.chromium.org/27208002

git-svn-id: http://skia.googlecode.com/svn/trunk@11759 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
7a4d6a99e99d8be9763fe9f00dca80a67f4ebcef 14-Oct-2013 Derek Sollenberger <djsollen@google.com> Merge skia changes from the skia chrome/m30_1599 branch.

This captures revisions r11503 to r11657 (inclusive). This range appears
large, but covers a span of just 3 commits one of which has already been
cherry-picked into this repository.

bug: 10285384

Change-Id: I614888fe1b65f31a713a689ccb3a9db6265b60e8
ontMgrTest.cpp
ddf94cf108ae430877f009bd67b9070341426947 12-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unnamed namespace usage from tests.

Skia code prefers static over unnamed namespace.

BUG=None
TEST=None
R=bsalomon@google.com, robertphillips@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/26962002

git-svn-id: http://skia.googlecode.com/svn/trunk@11747 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
illPathTest.cpp
itsInTest.cpp
rMemoryPoolTest.cpp
pegTest.cpp
ayerDrawLooperTest.cpp
nceTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
ileGridTest.cpp
ArrayTest.cpp
ritePixelsTest.cpp
fab44db294846ff05d837b9cf0bf97a073891da7 11-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up SkTypes.h.

This change removes sk_stdint.h since it is only needed for vs2008 and earlier.
This change removes SK_MMAP_SUPPORT define since it is no longer used.
This change removes the stdio.h include from SkTypes.h since on many systems
this is a very large header, few Skia files actually use it, it is
available everywhere standard, and SkDebugf should be used instead.

After this change there is no need for external users to put Skia's
include/config into their own list of includes, saving the headache
of having two header files of the same name and sometimes getting the
wrong one depending on include order.

R=bsalomon@google.com, djsollen@google.com

Review URL: https://codereview.chromium.org/27044002

git-svn-id: http://skia.googlecode.com/svn/trunk@11738 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCubicTest.cpp
ontNamesTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
athOpsQuadReduceOrderTest.cpp
tringTest.cpp
ArrayTest.cpp
8ec502b41693bf39436fc4277535df7479ee12dc 11-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add valgrind suppressions for driver bugs

https://codereview.chromium.org/27019005/



git-svn-id: http://skia.googlecode.com/svn/trunk@11736 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
29d4e638641d6d089a0361619ff2a583fd1a827f 11-Oct-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GIF decode: optional error messages and fault tolerance.

Add new runtime configuration variable,
images.gif.suppressDecoderWarnings, which suppresses warning and
errors from the GIF library. It defaults to "true", which is current
behavior.

(This setting can be changed by setting the environment variable
skia_images_gif_suppressDecoderWarnings="false".)

Some conditions which were errors before are now warnings:

- If the image width or height is greater than the GIF screen width or
height (respectively) we expand the screen to hold the image.

- If the offset of the image inside the screen would place the
image outside of the screen, we shift the image to fix this.

- If the image lacks a color table, we create a default color table.

- If the image is truncated, then the rest of the image is filled with
the fill color.

In all four cases, if images.gif.suppressDecoderWarnings is set to
false, then a warning message is printed via SkDebugf.

In the event of another kind of error, SkGIFImageDecoder::onDecode()
will still return false. But with this change, if
images.gif.suppressDecoderWarnings is set to false, a description of
the error is printed via SkDebugf.

Also, added a new unit test GifTest, which tests the deconing of both
good GIf files and corrupted files that should now work with this
change. This unit test is disabled on Win32, iOS, and Mac.

BUG=skia:1689
R=scroggo@google.com

Review URL: https://codereview.chromium.org/26743002

git-svn-id: http://skia.googlecode.com/svn/trunk@11734 2bbb7eff-a529-9590-31e7-b0007b416f81
ifTest.cpp
6d837aa1a12c1c03cce7cd37b1cae0ef4805f506 11-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix leak in BlurTest

https://codereview.chromium.org/26941002/



git-svn-id: http://skia.googlecode.com/svn/trunk@11725 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
d33115d59b35a765bdcef277f644cc35bc237d8c 11-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11723 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
9a282bee52c35609c2e6ec939bf6d268efb370a7 11-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix uninitialized memory read in BitmapCopy test with A1 config

https://codereview.chromium.org/26890002/



git-svn-id: http://skia.googlecode.com/svn/trunk@11722 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
d494b09f554d470fc6411d0924879bbfb0cb0e95 10-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Align SkLumaColorFilter with the spec.

The spec requires the resulting RGB channels for LuminanceToAlpha to be
0 (and not just scaled by the luminance value</facepalm>):

| R' | | 0 0 0 0 0 | | R |
| G' | | 0 0 0 0 0 | | G |
| B' | = | 0 0 0 0 0 | * | B |
| A' | | 0.2125 0.7154 0.0721 0 0 | | A |
| 1 | | 0 0 0 0 1 | | 1 |

(http://www.w3.org/TR/2011/REC-SVG11-20110816/filters.html#feColorMatrixElement)

This doesn't affect luminance masking (which depends only on the
resulting alpha channel), but other color filter users may care
about all color components.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/26467003

git-svn-id: http://skia.googlecode.com/svn/trunk@11713 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
a7538baeae619a513437f89b60cf738ee2de463d 10-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkThreadPool: tweak two little things that have been annoying me
1) it's pretty annoying that SkThreadPool doesn't include SkRunnable for us;
2) add wait() so we don't have to keep using SkAutoTDelete/free() to wait for completion.

BUG=
R=scroggo@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/26470005

git-svn-id: http://skia.googlecode.com/svn/trunk@11711 2bbb7eff-a529-9590-31e7-b0007b416f81
nceTest.cpp
kia_test.cpp
1b440d1574920c6ec596658c28fa885e0f9c8c43 10-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add leak to valgrind.supp

https://codereview.chromium.org/26869002/



git-svn-id: http://skia.googlecode.com/svn/trunk@11700 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
0a6151d66cc32d91eca037c91e557158cf8a2be2 10-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "change SkColorTable to be immutable""

This reverts commit b8162cb840f4cb6002ef68d5ac775c6a122c52a9.

Fixed was call-sites in benches that used the (now gone) setIsOpaque api.

R=scroggo@google.com

Review URL: https://codereview.chromium.org/26572006

git-svn-id: http://skia.googlecode.com/svn/trunk@11695 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
b295fb6ff3222453912dfcb7a1ea5184d40014b5 10-Oct-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkImageFilter's cropRect from SkIRect to a CropRect struct, containing an SkRect and flags indicating which parameters are set.

NOTE: this will require SK_CROP_RECT_IS_INT=1 to be set in Chrome until Blink has been updated to use SkImageFilter::CropRect. Include https://codereview.chromium.org/26528002/ with the Skia roll.

Note also that SK_CROP_RECT_IS_INT is a temporary measure until all call sites in Blink have been updated to use SkRect.

R=reed@google.com

Review URL: https://codereview.chromium.org/26371002

git-svn-id: http://skia.googlecode.com/svn/trunk@11692 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
3a19fb58a68183ea855439bdc92da4b90592c6a1 09-Oct-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sketch of SK_ONCE

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/26563002

git-svn-id: http://skia.googlecode.com/svn/trunk@11674 2bbb7eff-a529-9590-31e7-b0007b416f81
nceTest.cpp
d1ce77d548ab098c2f455e9b0fa1f195e75cd8ed 09-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix valgrind uninitialized memory complaint

https://codereview.chromium.org/26469003/



git-svn-id: http://skia.googlecode.com/svn/trunk@11664 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
6187abe776ef477a6977758dd315c2a985e9b65d 08-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update valgrind suppressions

https://codereview.chromium.org/26465007/



git-svn-id: http://skia.googlecode.com/svn/trunk@11650 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
72689a0db4cd82519fd7b54e02f2177250105182 08-Oct-2013 Derek Sollenberger <djsollen@google.com> We don't flatten or unflatten SkPaintOptionsAndroid. Reproduce and fix.

cherry-pick of http://code.google.com/p/skia/source/detail?r=11472

bug: 11115961
Change-Id: I0ed8af0bdec006178e5e6bd1c0a0c4f1cb517961
ndroid.mk
ndroidPaintTest.cpp
6c1ee2d4e727357451c8a6fcf4a08e75890b5d6d 07-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Luminance-to-alpha color filter (SkLumaColorFilter).

Adding a color filter luma implementation. The plan is to convert
existing clients and then deprecate SkLumaXfermode.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/25453004

git-svn-id: http://skia.googlecode.com/svn/trunk@11636 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
d34f05806f1ffb9c9b8804fae701c9c96e0fb609 05-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11625 2bbb7eff-a529-9590-31e7-b0007b416f81
pegTest.cpp
722555bebbe9128783b8dbe0e897c09c9ccb88ce 05-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add perspective support to SkMatrix44 initializers.

I noticed SkMatrix <-> SkMatrix44 conversions were dropping the
perspective values on the floor. As we use SkMatrix44 heavily in
Chromium, I'm concerned this missing code will cause a bug eventually.
It should be correct to simply use the bottom row of the 4x4 matrix
excluding the third column.

Previously committed and reverted, second attempt with fix for
incorrect use of SkMScalar/SkScalar.

BUG=
R=reed@google.com, caryclark@google.com

Author: aelias@chromium.org

Review URL: https://codereview.chromium.org/25484006

git-svn-id: http://skia.googlecode.com/svn/trunk@11624 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
851af07b11ad1d5482958dcef5689bd8841b4a94 05-Oct-2013 aelias@chromium.org <aelias@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Add perspective support to SkMatrix44 initializers."

This reverts commit 93db1bcae0863feed8d00a61ae2cf72a90a0083c.

git-svn-id: http://skia.googlecode.com/svn/trunk@11623 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
761f860a427e9ebb088c4d1e5fba04deb29b5a6f 04-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add perspective support to SkMatrix44 initializers.

I noticed SkMatrix <-> SkMatrix44 conversions were dropping the
perspective values on the floor. As we use SkMatrix44 heavily in
Chromium, I'm concerned this missing code will cause a bug eventually.
It should be correct to simply use the bottom row of the 4x4 matrix
excluding the third column.

BUG=
R=reed@google.com

Author: aelias@chromium.org

Review URL: https://codereview.chromium.org/25484006

git-svn-id: http://skia.googlecode.com/svn/trunk@11622 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
6b30e457409f37c91c301cd82040e733e2930286 04-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use vertexless shaders when NVpr is available

Adds support for vertexless shaders and enables them when
NV_path_rendering is available. This takes a
GrGLFragmentOnlyShaderBuilder class, a GrGLTexGenEffectArray class,
support for setting TexGen and the projection matrix in GrGpuGL, and
code for setting the GL fixed function state where necessary.

R=bsalomon@google.com, kkinnunen@nvidia.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/25846002

git-svn-id: http://skia.googlecode.com/svn/trunk@11620 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
70bd4bc092c7b5e49db54c1e95b61b0b2e0017d9 04-Oct-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix narrowing warning error

I was breaking build, by having a char instead of unsigned char.

Review URL: https://codereview.chromium.org/25683012

git-svn-id: http://skia.googlecode.com/svn/trunk@11599 2bbb7eff-a529-9590-31e7-b0007b416f81
pegTest.cpp
fed3037217e51ecd2fcd794a4d35fc7f689dd23d 04-Oct-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make image decoding more fault resistant, less verbose.

This change address what happens when a jpeg is partially downloaded
before failing. Many browsers will render it anyway: we want Skia to
do the same. The JpegTest takes a perfectly cromulent jpeg file and
only passes into the ImageDecoder the first half of the image. We
then verify that the image decoder returns a valid bitmap of the
correct dimensions.

We also fixed some png library errors, including issue 1691.

Also, suppressed the majority of warnings from using libpng and
libjpeg. By default, most warnings are *not* suppressed in debug mode.
If you have a debug binary and wish to suppress warnings, set the
following environment variables to true
skia_images_png_suppressDecoderWarnings
skia_images_jpeg_suppressDecoderWarnings
or from within a program that links to Skia:
#if defined(SK_DEBUG)
#include "SkRTConf.h"
SK_CONF_SET("images.jpeg.suppressDecoderWarnings", true);
SK_CONF_SET("images.png.suppressDecoderWarnings", true);
#endif

I tested this, before (control) and after these changes (test), on
364,295 skps from the cluster telemetry.
- number of errors+warnings in control = 2804
- number of errors+warnings fixed = 2283
- number of PNG verbosity fixed = 2152
- number of PNG error fixed = 4
- number of PNG segfault fixed = 3
- number of PNG errors changed to warnings = 62
- number of JPG verbosity fixed = 26
- number of JPG error fixed = 91
Not all errors and warning have been fixed.

These numbers were generated using the find_bad_images_in_skps.py
program. This program may be useful going forward for testing
image-decoding libraries on skp files from the cluster telemetry.
find_bad_images_in_skps.py depends on the test_image_decoder program,
which simply executes the SkImageDecoder::DecodeFile function and uses
its exit status to report success or failure.

BUG=skia:1649
BUG=skia:1691
BUG=skia:1680
R=scroggo@google.com

Review URL: https://codereview.chromium.org/24449003

git-svn-id: http://skia.googlecode.com/svn/trunk@11597 2bbb7eff-a529-9590-31e7-b0007b416f81
pegTest.cpp
608ea6508ae2e9ea05ea863ba50fc27d44d2eae9 03-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkPicture::ExtractBitmap callback in pdf too, there is no need for a specialized function pointer for pdf only only to pass a rectangle, when we can use subseted bitmaps.

R=scroggo@google.com, reed@google.com, vandebo@chromium.org, bsalomon@google.com

Author: edisonn@google.com

Review URL: https://codereview.chromium.org/25054002

git-svn-id: http://skia.googlecode.com/svn/trunk@11591 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
b0a0589f8ac0254ec1beba9db2fc32a2bedb31e5 03-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11585 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpTest.cpp
03087072483378a43f7b3f7a47944614187275eb 02-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make it explicit that some validate methods are debug only

https://codereview.chromium.org/25716003/



git-svn-id: http://skia.googlecode.com/svn/trunk@11575 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
409774e8accb8772765b376d3126209b198bc87c 02-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Sadly TSAN still reports this as a race, even when we're obviously writing the
same values. Initializing with the declaration should quiet it down.

BUG=
R=caryclark@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/25713004

git-svn-id: http://skia.googlecode.com/svn/trunk@11574 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
f614b76377cd4a273065ab01efabf9ded344eac2 02-Oct-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix 10.6

git-svn-id: http://skia.googlecode.com/svn/trunk@11572 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsOpTest.cpp
7eaa53d8f7e48fd17d02b5e3bd91f90e9c1899ef 02-Oct-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops work in progress

make more skps work

remove edit files

BUG=

Review URL: https://codereview.chromium.org/23542056

git-svn-id: http://skia.googlecode.com/svn/trunk@11570 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicIntersectionTestData.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsExtendedTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadIntersectionTestData.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsSkpTest.cpp
athOpsThreadedCommon.h
57f035ecae1ff8f2b2e0614e0649f0b90c69adad 01-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Writing to testName and reading its size isn't thread safe, TSAN reminds us.

Guarding it into a no-op makes it safe. Looks like this is only used for debugging, presumably singlethreaded?

BUG=
R=caryclark@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/25366002

git-svn-id: http://skia.googlecode.com/svn/trunk@11562 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
f6842e7c7b581ed55e859b37c1081836008393c5 01-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> In skia_test.cc, atomics -> mutex.

These guys are not heavily contended nor speed critical. No need for atomics,
plus this makes tsan stop complaining (correctly) about reading fNextIndex
unsafely in onEnd.

I took a look at failCount/fFailCount, which I think is safely atomic and quite
conveniently so: It's never read until all the threads which could possibly
increment it have terminated (except for the one where it was created,
obviously). We could guard it with a mutex too, but maybe we can let this one
slide.

BUG=
R=bungeman@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/25357002

git-svn-id: http://skia.googlecode.com/svn/trunk@11561 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
949eef0af2f5b47000e637347801cf2970092a38 01-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use explicitly-sized enums in GrGLProgramDesc::KeyHeader

Uses enums explicitly sized to 8 bits in GrGLProgramDesc::KeyHeader,
instead of storing them as uint8_t values. This avoids the need to
static_cast them.

R=bsalomon@google.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/23875048

git-svn-id: http://skia.googlecode.com/svn/trunk@11560 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
8d2392487cd97e68c0a71da9fd5d2b42ecac5ec8 01-Oct-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an option on SkImageDecoder to skip writing 0s.

Only implemented for PNG.

Add a getter and setter, and sets the default to false in the
constructor. Also copies the setting in copyFieldsToOther.

Fix an indpendent bug where fDitherImage was not being copied in
copyFieldsToOther.

In SkScaledBitmapSampler::begin, consolidate the settings passed in
by passing a const reference to the decoder. The decoder can be
referenced for its settings of dither, unpremultiplied, and now
skipping writing zeroes. Update callers to use the new API. In png
decoder, rather than passing around a pointer to an initial
read of getDitherImage, and potentially changing it, look at the
field on the decoder itself, and modify it directly. This is a
change in behavior - now if that same decoder is used to decode
a different image, the dither setting has changed. I think this is
okay because A) the typical use case is to use a new decoder for
each decode, B) we do not make any promises that a decode does not
change the decoder and C) it makes the code in SkScaledBitmapSampler
much cleaner.

In SkScaledBitmapScampler, add new row procs for skipping zeroes. Now
that choosing the row proc has five dimensions (src config, dst config,
dither, skip writing zeroes, unpremultiplied), use a new method: each
src/dst combination has a function for choosing the right proc depending
on the decoder.

SkScaledBitmapScampler::RowProc is now public for convenience.

Remove Sample_Gray_D8888_Unpremul, which is effectively no different
from Sample_Gray_D8888.

In cases where unpremultiplied was trivial, such as 565 and when
sampling from gray, decoding may now succeed.

Add a benchmark (currently disabled) for comparing the speed of skipping
writing zeroes versus not skipping. For this particular image, which is
mostly transparent pixels, normal decoding took about 3.6 milliseconds,
while skipping zeroes in the decode took only about 2.5 milliseconds
(this is on a Nexus 4). Presumably it would be slower on an image
with a small amount of transparency, but there will be no slowdown
for an image which reports that it has no transparency.

In SkImageRef_ashmem, always skip writing zeroes, since ashmem
memory is guaranteed to be initialized to 0.

Add a flag to skip writing zeroes in skimage.

Add a regression test for choosing the rowproc to ensure I did not
change any behavior accidentally.

BUG=skia:1661
R=reed@google.com

Review URL: https://codereview.chromium.org/24269006

git-svn-id: http://skia.googlecode.com/svn/trunk@11558 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
83fd2c7c43fea7ea49adc68681e9ed3ed180d568 26-Sep-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a buffered SkStream class.

This is used by Android to buffer an input stream which may not
otherwise be able to rewind.

Add a test for the new class.

R=bungeman@google.com, mtklein@google.com, reed@google.com

Review URL: https://codereview.chromium.org/23717055

git-svn-id: http://skia.googlecode.com/svn/trunk@11488 2bbb7eff-a529-9590-31e7-b0007b416f81
rontBufferedStreamTest.cpp
2c86fbb0b14a1f674bf56ea5ad6a086cc004a76e 26-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkDivMod with a special case for ARM.

BUG=skia:1663
R=djsollen@google.com, tomhudson@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/24159009

git-svn-id: http://skia.googlecode.com/svn/trunk@11482 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
97f8167622473edf2e4262fa619883e616574c19 26-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> We don't flatten or unflatten SkPaintOptionsAndroid. Reproduce and fix.

BUG=skia:1625
R=djsollen@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/24075010

git-svn-id: http://skia.googlecode.com/svn/trunk@11472 2bbb7eff-a529-9590-31e7-b0007b416f81
ndroidPaintTest.cpp
1435f9f29acfd6ebcbc541144f85fd9da2bde925 26-Sep-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add skia_tsan_build to match skia_asan_build and fix one example race.

R=mtklein@google.com

Review URL: https://codereview.chromium.org/24644003

git-svn-id: http://skia.googlecode.com/svn/trunk@11464 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
b5571b3324cf18629a255ec85e189447069c9b14 25-Sep-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkImageDecoders to take an SkStreamRewindable.

Only affects factories, static functions that will use the factories,
and subset decoding, which all require rewinding. The decoders
themselves continue to take an SkStream. This is merely documentation
stating which functions will possibly rewind the passed in SkStream.

This is part of the general change to coordinate SkStreams with
Android's streams, which don't necessarily support rewinding in all
cases.

Update callers to use SkStreamRewindable.

BUG=skia:1572
R=bungeman@google.com, reed@google.com

Review URL: https://codereview.chromium.org/23477009

git-svn-id: http://skia.googlecode.com/svn/trunk@11460 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
b8d9d5bd29edbdaeabd5478c1d3e71e92c09cd52 25-Sep-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor PathTest.cpp test_isNestedRects and test_isRect.

The existing implementations make it difficult to add new tests
and rely on non-local side effects.

R=bsalomon@google.com

Review URL: https://codereview.chromium.org/24502004

git-svn-id: http://skia.googlecode.com/svn/trunk@11455 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d28ba8010c6058bf073f7e815d5b2d7fdf698601 20-Sep-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> promote SkImage::AlphaType to SkAlphaType

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/24130009

git-svn-id: http://skia.googlecode.com/svn/trunk@11421 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
rawPathTest.cpp
athTest.cpp
urfaceTest.cpp
519f9677a41239808f41a7c13ef1f6e05eb1ed50 20-Sep-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add sk_calloc. Remove SkMemory_stdlib, which seems unused.

I'm seeing basically no difference between malloc + bzero and calloc on my desktop, but on a Galaxy Nexus calloc is never slower, and significantly faster once the allocation size becomes large, both for allocation and for _reading_.

BUG=skia:1662
R=reed@google.com

Review URL: https://codereview.chromium.org/24251008

git-svn-id: http://skia.googlecode.com/svn/trunk@11414 2bbb7eff-a529-9590-31e7-b0007b416f81
emoryTest.cpp
f91e3d4f54de9976b6538decadd977b19e49eadd 20-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11411 2bbb7eff-a529-9590-31e7-b0007b416f81
rrorTest.cpp
ontMgrTest.cpp
c5e57bd0a3e1b3b8d2d11307c6de1886656ca9fd 20-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> silence the error test to be a better citizen

BUG=
R=caryclark@google.com, bsalomon@google.com, tfarina@chromium.org, mtklein@google.com

Author: humper@google.com

Review URL: https://chromiumcodereview.appspot.com/23481012

git-svn-id: http://skia.googlecode.com/svn/trunk@11409 2bbb7eff-a529-9590-31e7-b0007b416f81
rrorTest.cpp
014f2c41838f5dd648503a740415e0e80c8406f8 19-Sep-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an even more convenient way to declare tests, with example.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23828008

git-svn-id: http://skia.googlecode.com/svn/trunk@11405 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
estClassDef.h
34835907d8ed21079a9ee09e0e16082a98637d42 19-Sep-2013 Leon Scroggins III <scroggo@google.com> Add an option on SkImageDecoder to skip writing 0s.

Only implemented for PNG.

Add a getter and setter, and sets the default to false in the
constructor. Also copies the setting in copyFieldsToOther.

Fix an indpendent bug where fDitherImage was not being copied in
copyFieldsToOther.

In SkScaledBitmapSampler::begin, consolidate the settings passed in
by passing a const reference to the decoder. The decoder can be
referenced for its settings of dither, unpremultiplied, and now
skipping writing zeroes. Update callers to use the new API. In png
decoder, rather than passing around a pointer to an initial
read of getDitherImage, and potentially changing it, look at the
field on the decoder itself, and modify it directly. This is a
change in behavior - now if that same decoder is used to decode
a different image, the dither setting has changed. I think this is
okay because A) the typical use case is to use a new decoder for
each decode, B) we do not make any promises that a decode does not
change the decoder and C) it makes the code in SkScaledBitmapSampler
much cleaner.

In SkScaledBitmapScampler, add new row procs for skipping zeroes. Now
that choosing the row proc has five dimensions (src config, dst config,
dither, skip writing zeroes, unpremultiplied), use a new method: each
src/dst combination has a function for choosing the right proc depending
on the decoder.

SkScaledBitmapScampler::RowProc is now public for convenience.

Remove Sample_Gray_D8888_Unpremul, which is effectively no different
from Sample_Gray_D8888.

In cases where unpremultiplied was trivial, such as 565 and when
sampling from gray, decoding may now succeed.

Add a benchmark (currently disabled) for comparing the speed of skipping
writing zeroes versus not skipping. For this particular image, which is
mostly transparent pixels, normal decoding took about 3.6 milliseconds,
while skipping zeroes in the decode took only about 2.5 milliseconds
(this is on a Nexus 4). Presumably it would be slower on an image
with a small amount of transparency, but there will be no slowdown
for an image which reports that it has no transparency.

In SkImageRef_ashmem, always skip writing zeroes, since ashmem
memory is guaranteed to be initialized to 0.

Add a flag to skip writing zeroes in skimage.

Add a regression test for choosing the rowproc to ensure I did not
change any behavior accidentally.

BUG:10016979
Change-Id: I5986ae750b85a9c9d8e3cafeebe904910247de3b
mageDecodingTest.cpp
c1a81ebec52bc5dff8c9461570e1212afe09506f 19-Sep-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> expand alias fontname test

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/24198004

git-svn-id: http://skia.googlecode.com/svn/trunk@11393 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
e2fd2d265126ce778b07177fb6820a3ef08a6156 19-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix build warning for unused function

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/24240008

git-svn-id: http://skia.googlecode.com/svn/trunk@11382 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
2397c06ffb10e0cbea4ae8aa4efe2f7fae3dc6e6 19-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable broken test on Android

R=caryclark@google.com

Review URL: https://codereview.chromium.org/23484057

git-svn-id: http://skia.googlecode.com/svn/trunk@11380 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
1f584ed3f43037e85bae3019d48e793ae28ebbd5 19-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update Android's FontHost to return NULL if familyName does not match

R=scroggo@google.com, wangxianzhu@chromium.org

Review URL: https://codereview.chromium.org/23601041

git-svn-id: http://skia.googlecode.com/svn/trunk@11377 2bbb7eff-a529-9590-31e7-b0007b416f81
ypeface.cpp
2262c588023f1641d2bf1ee8a38f6055973b1a17 19-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11375 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
d44d988127841cf9180bb7ba91b6eba8127af467 18-Sep-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix fontconfig backend to only cache new fonts if their outName was unique

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/23710072

git-svn-id: http://skia.googlecode.com/svn/trunk@11364 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
07f6cf372dc003694c79cfb313923fef9eaf8dc8 18-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix printing of error messages in canvasstatetest.

R=scroggo@google.com, caryclark@google.com

Author: djsollen@google.com

Review URL: https://chromiumcodereview.appspot.com/23477067

git-svn-id: http://skia.googlecode.com/svn/trunk@11363 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
26d2e046cd3e11cb61d1b0b3ace304a6dc8c995b 18-Sep-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pdf: write only ToUnicode mappings needed by the font, trimming anything out of [firstChar, lastChar] interval.

R=vandebo@chromium.org

Review URL: https://codereview.chromium.org/23519006

git-svn-id: http://skia.googlecode.com/svn/trunk@11360 2bbb7eff-a529-9590-31e7-b0007b416f81
oUnicode.cpp
cc7508b2ab7e56d42c1c4b75dff028286d3d3341 11-Sep-2013 Leon Scroggins III <scroggo@google.com> Fixes in support of framework changes.

Two Skia changes required for
https://googleplex-android-review.git.corp.google.com/#/c/357301/:

https://codereview.chromium.org/23464068/:
Use the default resync_to_restart in jpeg.

Our version requires rewinding the stream, which is not always
supported. Instead, depend on jpeg's default version.

This is required because the new framework code assumes that an
image stream will never be rewound unless it's at the beginning.

https://codereview.chromium.org/23717055/:
Add a buffered SkStream class.

This is used by Android to buffer an input stream which may not
otherwise be able to rewind.

Add a test for the new class.

This change allows us to buffer natively, and to only buffer the
beginning of the stream, which is all that is needed by the image
decoders.

BUG:8432093
BUG:6493544
BUG:10725383

Change-Id: I39fb1346866066693e14b6bcab1c398b9befa296
ndroid.mk
rontBufferedStreamTest.cpp
35349d80b3564123fffd7bf75fc6069c314dcfc1 18-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r11342 (Add infrastructure for testing the debugger code) due to build breakages



git-svn-id: http://skia.googlecode.com/svn/trunk@11343 2bbb7eff-a529-9590-31e7-b0007b416f81
ebugCanvasTest.cpp
15ec2ea61712f62e955ee5f5a1878dc55e11583f 18-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add infrastructure for testing the debugger code.

This creates the necessarily files and GYP targets to start adding tests
for the debugger code. There is currently one test added, more will be added
once the infrastructure is in place.

BUG=
R=mtklein@google.com

Author: dsinclair@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23589007

git-svn-id: http://skia.googlecode.com/svn/trunk@11342 2bbb7eff-a529-9590-31e7-b0007b416f81
ebugCanvasTest.cpp
8c960bf965dce870d57623ac0dd01c0f3f43a21f 18-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Mac 10.6 DeviceLooperTest build error (this time with feeling)



git-svn-id: http://skia.googlecode.com/svn/trunk@11338 2bbb7eff-a529-9590-31e7-b0007b416f81
eviceLooperTest.cpp
697b2121a3877203444bc47d863e6857217d8cc9 18-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for Mac10.6 compiler error on tests\DeviceLooperTest.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@11337 2bbb7eff-a529-9590-31e7-b0007b416f81
eviceLooperTest.cpp
2291e72b998244f3b4426b7307967b096ab13b1a 18-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11336 2bbb7eff-a529-9590-31e7-b0007b416f81
eviceLooperTest.cpp
a513efba950b5f66740c3721bbfc4ad51ae91689 17-Sep-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add missing file

git-svn-id: http://skia.googlecode.com/svn/trunk@11332 2bbb7eff-a529-9590-31e7-b0007b416f81
eviceLooperTest.cpp
a604c4f971adf84dcf8235994b1441f6f4fe8ab1 17-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11309 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
9dfac2366ddc39f259f0a77cfa9470c6d6111a82 16-Sep-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Suppress test output.

This output is for debugging purposes, and does not report an error.

BUG=skia:1616

Review URL: https://codereview.chromium.org/24110003

git-svn-id: http://skia.googlecode.com/svn/trunk@11292 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
570863f2e22b8ea7d7c504bd15e4f766af097df2 16-Sep-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops work in progress

path ops work in progress

BUG=

Review URL: https://codereview.chromium.org/21359002

git-svn-id: http://skia.googlecode.com/svn/trunk@11291 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsExtendedTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyTest.cpp
athOpsThreadedCommon.cpp
1588354a8702ef993e1a6cce0e7782db4c5f1514 16-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Compiler fix for r11288



git-svn-id: http://skia.googlecode.com/svn/trunk@11289 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
24ddde97581624777feebc9e95ae558282f95d4c 16-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert 11247, 11250, 11251, 11257, and 11279 to unblock DEPS roll (https://codereview.chromium.org/24159002/)

11279 Sanitizing source files in Housekeeper-Nightly - https://code.google.com/p/skia/source/detail?r=11279
11257 Canary build fix - https://codereview.chromium.org/23532068
11251 More warnings as errors fixes - https://code.google.com/p/skia/source/detail?r=11251
11250 Warnings as errors fix - https://code.google.com/p/skia/source/detail?r=11250
11247 Initial error handling code - https://chromiumcodereview.appspot.com/23021015



git-svn-id: http://skia.googlecode.com/svn/trunk@11288 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
ba6e954140e45e251d67934ed6ad752149fcf72f 16-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert the revert of 11247, 11250, 11251 and 11279 (Chrome already relies on changes in r11247)



git-svn-id: http://skia.googlecode.com/svn/trunk@11287 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
478884f7d3b8c7be8b62f3fa2b79192f411c3fec 16-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert 11247, 11250, 11251 and 11279 to unblock DEPS roll (https://codereview.chromium.org/24159002/)

11279 Sanitizing source files in Housekeeper-Nightly - https://code.google.com/p/skia/source/detail?r=11279
11251 More warnings as errors fixes - https://code.google.com/p/skia/source/detail?r=11251
11250 Warnings as errors fix - https://code.google.com/p/skia/source/detail?r=11250
11247 Initial error handling code - https://chromiumcodereview.appspot.com/23021015



git-svn-id: http://skia.googlecode.com/svn/trunk@11285 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
dc9888c409e4903a687ea05b9846987b829bf9ac 14-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11279 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
40fcb598944abdd6578dfd280c1470240b7c7f09 13-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More warnings as errors fixes



git-svn-id: http://skia.googlecode.com/svn/trunk@11251 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
4b681bc95b14e081f1cc5b68cb755d57fc8eb977 13-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed issues found by fuzzer

Last week, the fuzzer found a few numerical issue with filters and I had written some fixes for them. Here are the fixes with some unit tests.

For senorblanco : So I figured out what was asserting when we'd get a 0 width "result" in SkBicubicImageFilter::onFilterImage(). Basically, if the "result" SkBitmap object calls SkBitmap::setConfig() with "width" and/or "height" set to 0, then the SkBitmap object will call SkBitmap::reset(), making the SkBitmap object's config invalid. At this point, calling SkBitmap::getAddr32() will assert, even without attempting to dereference the data pointer, because the SkBitmap's config is invalid. If height is valid, but width is 0, then this call to SkBitmap::getAddr32() happens directly in SkBicubicImageFilter::onFilterImage() a few lines lower and asserts right away.

BUG=
R=senorblanco@google.com, senorblanco@chromium.org, bsalomon@google.com

Author: sugoi@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23533042

git-svn-id: http://skia.googlecode.com/svn/trunk@11249 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
e0e7cfe44bb9d66d76120a79e5275c294bacaa22 09-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Change old PRG to be SkLCGRandom; change new one to SkRandom

The goal here is to get people to start using the new random number
generator, while leaving the old one in place so we don't have to
rebaseline GMs.

R=reed@google.com, bsalomon@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23576015

git-svn-id: http://skia.googlecode.com/svn/trunk@11169 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
itmapGetColorTest.cpp
lampRangeTest.cpp
lipStackTest.cpp
olorFilterTest.cpp
olorTest.cpp
rawBitmapRectTest.cpp
LProgramsTest.cpp
rMemoryPoolTest.cpp
nfRectTest.cpp
ListTest.cpp
athTest.cpp
atrixTest.cpp
ipMapTest.cpp
ackBitsTest.cpp
aintTest.cpp
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
TreeTest.cpp
andomTest.cpp
egionTest.cpp
k64Test.cpp
ortTest.cpp
tilsTest.cpp
riter32Test.cpp
a4de8c257ea0be8ff7081f645249b6afe5c48e7e 09-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove GrRefCnt.h in favor of SkRefCnt.h

This removes GrRefCnt.h with all its tyepdefs and #defines and just switch them
to the Sk* equivalents.

GrSafeSetNull was promoted to SkSafeSetNull in SkRefCnt.h.

BUG=None
TEST=none, no functional changes.
R=bsalomon@google.com, robertphillips@google.com

Author: tfarina@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23904003

git-svn-id: http://skia.googlecode.com/svn/trunk@11151 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
eadWriteAlphaTest.cpp
b3ec29d2d81ae391e433fbdf8aabc791e426ee38 07-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11143 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
6485b0be74f66587b51ca3c476b24b0e2674ca5b 06-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Switch out random number generator for tests, benches, samples.

This change makes tests, benches and samples use the new SkMWCRandom PRNG. GMs will be saved for another time, as they'll require rebaselining.

R=reed@google.com, bsalomon@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23653018

git-svn-id: http://skia.googlecode.com/svn/trunk@11136 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapGetColorTest.cpp
athTest.cpp
atrixTest.cpp
ipMapTest.cpp
aintTest.cpp
91a798f121a2238639f8e2d08cc776d4f0236ceb 06-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> alpha threshold bitmap shader

Committed: http://code.google.com/p/skia/source/detail?r=11122

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/23707019

git-svn-id: http://skia.googlecode.com/svn/trunk@11131 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
b7061176c7f414616fe2e79e832b3e0abe326af6 06-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Push sigma-based blur interface into our GMs/benches/tests/samplecode

https://codereview.chromium.org/23701006/



git-svn-id: http://skia.googlecode.com/svn/trunk@11129 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
aintTest.cpp
6fc1b4998917791a73bf54428513940fe77dc058 06-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11126 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
67db510c9c7f006fb4ec5027e5c859cfd71f42c0 06-Sep-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "alpha threshold bitmap shader"

This reverts commit r11122.

git-svn-id: http://skia.googlecode.com/svn/trunk@11123 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4ec4cf93b7822e0000102b165852ad623afcb84e 05-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> alpha threshold bitmap shader

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/23707019

git-svn-id: http://skia.googlecode.com/svn/trunk@11122 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
f4f3faade67a4a24736c79aaaf570faffd0e3fdb 05-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Tweak to r11099 for N4 & Ubuntu13



git-svn-id: http://skia.googlecode.com/svn/trunk@11113 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
9188a15f846ae79892c332aed2a72ee38116bdc6 05-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a GrGpuGL reference for GrGLProgram/GrGLUniformManager

Updates GrGLProgram and GrGLUniformManager to keep a GrGpuGL reference
instead of one for GrGLContextInfo. No change in functionality, this
is in preparation to support fixed function GL calls for vertexless
shaders.

R=bsalomon@google.com

Author: cdalton@nvidia.com

Review URL: https://chromiumcodereview.appspot.com/23636011

git-svn-id: http://skia.googlecode.com/svn/trunk@11111 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
b85564afffe630190fca81111a5f28cf9d4143be 05-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Warning/error fix for r11099 on Mac 10.6



git-svn-id: http://skia.googlecode.com/svn/trunk@11107 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
3dfa4cc07cb1b5c8dc90e022b7e5001a77a82066 05-Sep-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add test to exercise extreme blur sigmas

https://codereview.chromium.org/23530039/



git-svn-id: http://skia.googlecode.com/svn/trunk@11099 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
1037c7b9f2f0220c4f0a90faebe3c89d4981c1e3 04-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix build breakage for missing SkScalarToInt

Review URL: https://codereview.chromium.org/23718005

git-svn-id: http://skia.googlecode.com/svn/trunk@11085 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
fa0ab893eb60a41aac6945ab26d2b3a7e38443c4 29-Aug-2013 Derek Sollenberger <djsollen@google.com> Create a semi-stable API for capturing the state of an SkCanvas and reconstructing that state across different versions of Skia.

cherry-pick of https://skia.googlecode.com/svn/trunk@11013
cherry-pick of https://skia.googlecode.com/svn/trunk@11081

bug:10152369
Change-Id: I7821cf6efe856d5da0ba9c9ddda7a7ad392492e2
ndroid.mk
anvasStateTest.cpp
bd6343b1d60d2a85e930f33f4b06b4502b3e8caa 04-Sep-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rewrite SkTRegistry to take any trivially-copyable type.

Obviously these are all currently function pointers of type T(*)(P) for various
T and P. In bench refactoring, I'm trying to register a function pointer of
type T(*)(), which can't be done as is (passing P=void doesn't work). This
also lets us register things like primitives, which is conceivable useful.

BUG=
R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/23453031

git-svn-id: http://skia.googlecode.com/svn/trunk@11082 2bbb7eff-a529-9590-31e7-b0007b416f81
est.h
339e79fbeabae18a8b9ea094293c7c25eaf9dd68 04-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkCanvasStack and update the Canvas utilities to use it.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23865004

git-svn-id: http://skia.googlecode.com/svn/trunk@11081 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
85092f05c406ed5a0c65ff576816924c1a6b903b 04-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11071 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
25f72ed03485f58998846d80858d64b5a3c40c7f 03-Sep-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Matrix44Test and double-to-float conversion in SVD code

git-svn-id: http://skia.googlecode.com/svn/trunk@11067 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
5b2e2640ed345c4670b99b349f62eb6f9446ec1e 03-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revise SVD code to remove arctangents.
Also added bench for timing matrix decomposition.

R=reed@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23596006

git-svn-id: http://skia.googlecode.com/svn/trunk@11066 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
atrixTest.cpp
8b4ba6373559026f7e24de1b8b487d8b72256dc1 03-Sep-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix bug in SkWriter32.

If you give SkWriter32 external storage but that external storage is too small
for the first reservation you make, you'll hit an assert in debug mode.

I think the answer is to simply remove the SkASSERT. Added a test.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23646007

git-svn-id: http://skia.googlecode.com/svn/trunk@11062 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
ffb71f2dd5f1cdc905c483737bb56080adc56cc9 30-Aug-2013 sglez@google.com <sglez@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix rtree tests build error

Review URL: https://codereview.chromium.org/23531019

git-svn-id: http://skia.googlecode.com/svn/trunk@11038 2bbb7eff-a529-9590-31e7-b0007b416f81
TreeTest.cpp
8c902126a90f37b6a038a78488c6215fa0c34b7d 30-Aug-2013 sglez@google.com <sglez@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> R-Tree -- Don't sort draw commands unless specified.
We expect Webkit and Bink to give us draw commands in a reasonable x,y order.
We can maintain correctness and get a 17% recording speedup for the R-Tree by
not sorting in x and y when bulk-loading.

R=caryclark@google.com, reed@google.com

Review URL: https://codereview.chromium.org/23480002

git-svn-id: http://skia.googlecode.com/svn/trunk@11037 2bbb7eff-a529-9590-31e7-b0007b416f81
TreeTest.cpp
a6f37e77c1c95f0a06ac55ff659cb7b8dfabefcf 30-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add ShouldSkip variant that can read a --match flag directly.

Just seemed like we were going through lots of hoops for this common case.

BUG=
R=scroggo@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/23708009

git-svn-id: http://skia.googlecode.com/svn/trunk@11034 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
772c4e6d09f5e0971a584d2035ee789483d6f47a 30-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11017 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
e02944075840d672bd1797f3d945ff82d302282f 30-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace SkTScopedPtr with SkAutoTDelete in Skia.

BUG=
R=djsollen@google.com, reed@google.com, vandebo@chromium.org

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/23621005

git-svn-id: http://skia.googlecode.com/svn/trunk@11016 2bbb7eff-a529-9590-31e7-b0007b416f81
ArrayTest.cpp
20146b3f7339d2c71c416397135e70e34f7fedb1 29-Aug-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix windows test error for CanvasStateTest.cpp

Review URL: https://codereview.chromium.org/23539005

git-svn-id: http://skia.googlecode.com/svn/trunk@11015 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
5587ac09beec4c056332504f3fa85990520b43fd 29-Aug-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create a semi-stable API for capturing the state of an SkCanvas and reconstructing that state across different versions of Skia.

R=joth@chromium.org, mtklein@google.com, reed@google.com, scroggo@google.com

Committed: https://code.google.com/p/skia/source/detail?r=11010

Review URL: https://codereview.chromium.org/23545017

git-svn-id: http://skia.googlecode.com/svn/trunk@11013 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
5696baa16bc3cfbf99b9abfcdd178d0afe3213da 29-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> dump out sizeof(void*) in header

BUG=
R=rmistry@google.com

Review URL: https://codereview.chromium.org/23773003

git-svn-id: http://skia.googlecode.com/svn/trunk@11012 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
16b86ced1f43d61e7216b878c87e5e86947404bb 29-Aug-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Create a semi-stable API for capturing the state of an SkCanvas and reconstructing that state across different versions of Skia."

This reverts r11010.

Review URL: https://codereview.chromium.org/23757008

git-svn-id: http://skia.googlecode.com/svn/trunk@11011 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
2ce9fce145c0b6cc80a02bf534fdea2798936265 29-Aug-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create a semi-stable API for capturing the state of an SkCanvas and reconstructing that state across different versions of Skia.

R=joth@chromium.org, mtklein@google.com, reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/23545017

git-svn-id: http://skia.googlecode.com/svn/trunk@11010 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasStateTest.cpp
6323ca5ca5f0bc40fc6fdf421e18b55cceb45fe6 29-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Yet another patch for 10995



git-svn-id: http://skia.googlecode.com/svn/trunk@10998 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
73672254a3e498081967d00d27b17ada443e2ab2 29-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Patch for 10995



git-svn-id: http://skia.googlecode.com/svn/trunk@10997 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
b0b03d98afdecc476975151fdb01a6186f57b463 29-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Patch for r10995



git-svn-id: http://skia.googlecode.com/svn/trunk@10996 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
1f2f338e23789f3eef168dcbd8171a28820ba6c1 29-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split SkDevice into SkBaseDevice and SkBitmapDevice

https://codereview.chromium.org/22978012/



git-svn-id: http://skia.googlecode.com/svn/trunk@10995 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
radientTest.cpp
ayerDrawLooperTest.cpp
ictureTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
ileGridTest.cpp
ritePixelsTest.cpp
1c028bd395dc52ca12b99f85f0c297d15a288c2d 28-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix state machine so we know simple only loops once, but we can call maprect in debug mode

Revert "Revert of r10943."

This reverts commit 9e83074cce521d3cc3b8b3a9b819a612a07d800a.

BUG=
R=tomhudson@google.com

Review URL: https://codereview.chromium.org/23618005

git-svn-id: http://skia.googlecode.com/svn/trunk@10981 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
515dcd36032997ce335daa0163c6d67e851bcad1 28-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace uses of GR_DEBUG by SK_DEBUG.

BUG=None
R=bsalomon@google.com, robertphillips@google.com

Author: tfarina@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23137022

git-svn-id: http://skia.googlecode.com/svn/trunk@10978 2bbb7eff-a529-9590-31e7-b0007b416f81
ashCacheTest.cpp
ListTest.cpp
e09d6f48190ee8c015fc22e9531293861bd99184 27-Aug-2013 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of r10943.

Review URL: https://codereview.chromium.org/23626002

git-svn-id: http://skia.googlecode.com/svn/trunk@10944 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
42cb6c0247894b631976fd361d46be9260b27c3b 27-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkDeviceLooper to handle larger-than-fixedpoint

BUG=

Review URL: https://codereview.chromium.org/23392006

git-svn-id: http://skia.googlecode.com/svn/trunk@10943 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
9f842d390499e7900e25767fc27504669455374b 27-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> New warning -> new pattern for fingers to learn for asserting failure.

The Ubuntu Clang compile bot has a warning enabled now that yells about !"foo"
before it breaks Chrome's build where the same warning is -Werror.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23586002

git-svn-id: http://skia.googlecode.com/svn/trunk@10937 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
d0f1a4fb28057de42d116005d82166b2302d28e9 27-Aug-2013 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix clip expansion in SkPictureRecord::recordRestoreOffsetPlaceholder()

For operations which can expand the region, zeroing previous clip ops' restore offsets is not enough: we need to also break the chain - otherwise the next restore() will simply traverse back and reset the skip offsets.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/22987003

git-svn-id: http://skia.googlecode.com/svn/trunk@10934 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
10adca5c4a43e65df3fea7e354b1ace46d8a5e06 27-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10929 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
f272e3554aec86b5d6f7ba44f81f37e5a2070bdc 26-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> test drawing large-coord aa rects

git-svn-id: http://skia.googlecode.com/svn/trunk@10926 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
57c5672901674ea904025f9552c4603f8a83d28e 26-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix leaked SkPDFDevice in PDFPrimitivesTest.cpp

https://chromiumcodereview.appspot.com/23003035/



git-svn-id: http://skia.googlecode.com/svn/trunk@10910 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
330313a8a8343876ee596da39da06a5d69badd9c 22-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> My clang now doesn't complain about !"foo".

BUG=
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/22875037

git-svn-id: http://skia.googlecode.com/svn/trunk@10874 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
lampRangeTest.cpp
athTest.cpp
b74bdf024930e71ca1be8f874ed49dd0b31449b1 21-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10842 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
950457543860eb1c545e0ef8bb2c20e2ddc6196e 20-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add perf benchmarks and more unit tests for matrix inversion

R=jvanverth@google.com, reed@google.com

Author: shawnsingh@chromium.org

Review URL: https://chromiumcodereview.appspot.com/22886010

git-svn-id: http://skia.googlecode.com/svn/trunk@10836 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
9b051a375ba6d6b61cea98f35834cd032aaa5347 20-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10830 (Split SkDevice out of SkRasterDevice) until we can get Chromium ready.



git-svn-id: http://skia.googlecode.com/svn/trunk@10835 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
radientTest.cpp
ayerDrawLooperTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
ileGridTest.cpp
ritePixelsTest.cpp
3055b700189afdd02486ed8f2279cea1d8897243 20-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split SkDevice out of SkBitmapDevice

https://codereview.chromium.org/22978012/



git-svn-id: http://skia.googlecode.com/svn/trunk@10830 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
radientTest.cpp
ayerDrawLooperTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
ileGridTest.cpp
ritePixelsTest.cpp
9e3074e968f52eb02fdc329bb9fbe7be5e674268 20-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkTDynamicHash in picture recording

cleaned up SkPictureFlat.h quite a bit while working on this.

bench --match picture_record_ shows some improvement:
compare.sh bench --match picture_record_ --repeat 100
master -> usehash
N=3 p=0.001000 (corrected to 0.000333)
sig? rel. speed bench
y 1.0x picture_record_dictionaries
y 1.5x picture_record_recurring_paint_dictionary
y 3.8x picture_record_unique_paint_dictionary
Overall relative speed: 1.9x

bench_pictures --record is pretty much neutral:
compare.sh bench_pictures -r ../skp --mode record --repeat 30
master -> usehash
N=63 p=0.001000 (corrected to 0.000016)
sig? rel. speed bench
n 0.9x desk_pokemonwiki.skp
y 0.9x desk_googlespreadsheet.skp
y 0.9x tabl_pravda.skp
y 1.0x desk_googlespreadsheetdashed.skp
n 1.0x tabl_onlinewsj.skp
n 1.0x tabl_nytimes.skp
n 1.0x desk_googlehome.skp
y 1.0x desk_techcrunch.skp
n 1.0x tabl_slashdot.skp
n 1.0x tabl_techmeme.skp
n 1.0x desk_googleplus.skp
n 1.0x desk_sfgate.skp
n 1.0x tabl_transformice.skp
n 1.0x desk_espn.skp
n 1.0x desk_baidu.skp
n 1.0x tabl_worldjournal.skp
n 1.0x desk_chalkboard.skp
n 1.0x tabl_frantzen.skp
n 1.0x desk_gws.skp
n 1.0x tabl_androidpolice.skp
n 1.0x desk_linkedin.skp
n 1.0x mobi_wikipedia.skp
n 1.0x desk_wowwiki.skp
n 1.0x desk_css3gradients.skp
n 1.0x desk_gmailthread.skp
n 1.0x desk_yahoogames.skp
n 1.0x desk_facebook.skp
n 1.0x desk_wordpress.skp
n 1.0x tabl_vnexpress.skp
n 1.0x desk_br337.skp
n 1.0x tabl_engadget.skp
n 1.0x tabl_theverge.skp
n 1.0x desk_amazon.skp
n 1.0x desk_ebay.skp
n 1.0x tabl_hsfi.skp
n 1.0x tabl_sahadan.skp
n 1.0x desk_weather.skp
n 1.0x tabl_digg.skp
n 1.0x desk_youtubetvbrowse.skp
n 1.0x tabl_culturalsolutions.skp
n 1.0x tabl_ukwsj.skp
n 1.0x desk_youtube.skp
n 1.0x tabl_googlecalendar.skp
y 1.0x desk_yahooanswers.skp
n 1.0x desk_blogger.skp
n 1.0x desk_yahoonews.skp
y 1.0x desk_yahoosports.skp
y 1.0x tabl_mercurynews.skp
n 1.0x desk_youtubetvvideo.skp
y 1.0x tabl_gspro.skp
y 1.1x tabl_googleblog.skp
y 1.1x tabl_cnet.skp
y 1.1x tabl_mlb.skp
y 1.1x tabl_cuteoverload.skp
y 1.1x desk_booking.skp
y 1.1x tabl_deviantart.skp
y 1.1x desk_twitter.skp
y 1.1x tabl_cnn.skp
y 1.1x tabl_gamedeksiam.skp
y 1.1x tabl_gmail.skp
y 1.1x tabl_nofolo.skp
y 1.1x tabl_mozilla.skp
y 1.1x desk_pinterest.skp
Overall relative speed: 1.0x

(I'd take this to mean that the microbenches are probably drifting away from relevance.)
BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/21564008

git-svn-id: http://skia.googlecode.com/svn/trunk@10825 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
edd18989acedcf3d8e0061799c895efc589ce19d 20-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Tweak Matrix44 test so it'll pass on ChromeOS

BUG=
R=robertphillips@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23093008

git-svn-id: http://skia.googlecode.com/svn/trunk@10822 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
f02f07835e417a5baff27dc8ef0b0e773ab7be00 20-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkMatrix44::invert() check for finite 1/det instead of magic value

Previously we were checking to see if the magnitude of
determinant of the matrix to be inverted was less than
1.0e-8, which is a magic number possibly plucked from
Graphics Gems. After some discussion, it's been determined
(ha) that we can simply check to see if 1/det is finite and
if so proceed.

BUG=222926

Committed: http://code.google.com/p/skia/source/detail?r=10758

R=reed@google.com, shawnsingh@chromium.org

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/22904003

git-svn-id: http://skia.googlecode.com/svn/trunk@10818 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
4271f79289d6d5d510ee2249d34eba194963f539 16-Aug-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Make SkMatrix44::invert() check for finite 1/det instead of magic value"

This reverts commit f109b4ac6ef21ccb8b76891e50e63dae820af116.

git-svn-id: http://skia.googlecode.com/svn/trunk@10760 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
7a3eeacd87443bd5ace370edc458ffa628303010 15-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkMatrix44::invert() check for finite 1/det instead of magic value

Previously we were checking to see if the magnitude of determinant of the
matrix to be inverted was less than 1.0e-8, which is a magic number possibly
plucked from Graphics Gems. After some discussion, it's been determined (ha)
that we can simply check to see if 1/det is finite and if so proceed.

BUG=222926
R=reed@google.com, shawnsingh@chromium.org

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/22904003

git-svn-id: http://skia.googlecode.com/svn/trunk@10758 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
cb8b0eeacfc2ff79a2b9721e3ef21d1efb507dc8 15-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update how SkPath handles fGenerationID and fSourcePath, and add tests to cover.

BUG=
R=bungeman@google.com, reed@google.com

Review URL: https://codereview.chromium.org/22911002

git-svn-id: http://skia.googlecode.com/svn/trunk@10756 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
259fbaf7a464827bc560517988daeb5836e11e98 15-Aug-2013 egdaniel@google.com <egdaniel@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add homogeneous point mapping to Matrix

Adds mapping of homogeneous points (points with three scalar components,
where the last component is not 1). Includes fix for tests when
running on 32 bit debug builds

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/22816005

git-svn-id: http://skia.googlecode.com/svn/trunk@10755 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
0038c12f337b7037ef698e2723099c7e3b19c4ca 15-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Write NULL as "" so readString() always returns a non-NULL string.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/22862002

git-svn-id: http://skia.googlecode.com/svn/trunk@10754 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
0e6e8cc627242cc7e301401cfe112ba98a008101 15-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10705 (ARM Skia NEON patches - 04 - Clean SkFixed / SkLONGLONG) due to 1000+ linux_layout failures (http://build.chromium.org/p/tryserver.chromium/builders/linux_layout_rel/builds/18997/steps/webkit_tests/logs/stdio)



git-svn-id: http://skia.googlecode.com/svn/trunk@10729 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
k64Test.cpp
c1bf2de83549406de305e174af2b88630fdc3098 14-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix crash when querying a runtime config that is defined in environment

Fix crash when querying a runtime config in case when there's no
skia.conf file and the config variable is still defined in the
environment.

Runs the added SkRTConf::UnitTest test as part of new "UnitTest" test.

Previous version of the patch failed Windows build due to setenv usage.
On Windows, use _putenv_s instead.

BUG=skia:1494
R=bsalomon@google.com, humper@google.com

Author: kkinnunen@nvidia.com

Review URL: https://chromiumcodereview.appspot.com/23174002

git-svn-id: http://skia.googlecode.com/svn/trunk@10715 2bbb7eff-a529-9590-31e7-b0007b416f81
nitTestTest.cpp
1c38bb9ea8c4c8f5227c3e25e86faddfbf824524 14-Aug-2013 Leon Scroggins III <scroggo@google.com> Merge Skia r10680 into Android.

Conflicts:
include/core/SkUserConfig.h
src/images/SkImageDecoder_libjpeg.cpp

Change-Id: I40e031f0abcd0d1e064b25f071bfc5f1b3c55e91
73ab2965363713f9a0ccec3666724a60329e6ea3 14-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> ARM Skia NEON patches - 04 - Clean SkFixed / SkLONGLONG

It removes SkLONGLONG and uses int64_t to implement the SkFixed
operations for which a SkLONGLONG version existed. It also
removes the 32 bit version that are being replaced.

BUG=
R=djsollen@google.com, reed@google.com

Author: kevin.petit.arm@gmail.com

Review URL: https://chromiumcodereview.appspot.com/18539004

git-svn-id: http://skia.googlecode.com/svn/trunk@10705 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
k64Test.cpp
e27eefc4844477cee5d32f51ab45ff62020cdb36 13-Aug-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@10680

Change-Id: I846e489575859eff43302c698606953c58420671
itmapCopyTest.cpp
anvasTest.cpp
eferredCanvasTest.cpp
ynamicHashTest.cpp
ontNamesTest.cpp
puDrawPathTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
athTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
esourceCacheTest.cpp
urfaceTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
c9ab2b7dd8411f8a78654b237c69a5886567dfec 12-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkTDynamicHash
- add validate()
- make add() and remove() strict
- fill in maybeShrink()
- make grow and shrink thresholds configurable.
- fix issue where we were getting filled with deleted items - we need to count them as occupied when determining if we should grow

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/22571010

git-svn-id: http://skia.googlecode.com/svn/trunk@10677 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
mageCacheTest.cpp
1c0ade7fc67a45f0c3068303aefaba846e2ffa05 11-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverted r10654 (Fix crash when querying a runtime config that is defined in environment) due to compilation failure on Chromium win_layout bot



git-svn-id: http://skia.googlecode.com/svn/trunk@10669 2bbb7eff-a529-9590-31e7-b0007b416f81
nitTestTest.cpp
f6ad1e8a06120214992fb7f49f5887cb64e3901a 09-Aug-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10659: Add a map homogenous points to SkMatrix


git-svn-id: http://skia.googlecode.com/svn/trunk@10667 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
9d54aeb8a192845f1f8122dba780d40ee6a0de1b 09-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> All rSomethingTo() immediately following a close() are relative to the point we closed from, not the point we close to. Fix that.

Seems like this has been broken since the stone ages.

BUG=skia:1474, code.google.com/p/android/issues/detail?id=41216
R=bsalomon@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/22681006

git-svn-id: http://skia.googlecode.com/svn/trunk@10666 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
47fa13640b7c8615aa7aee0d5b1d63a7bd6ed44e 09-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> allow NULL in writeString/readString

BUG=skia:1469, code.google.com/p/android/issues/detail?id=58257
R=scroggo@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/22359003

git-svn-id: http://skia.googlecode.com/svn/trunk@10662 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
2fae54d945b5e0e689a619e91da8db28734042c9 09-Aug-2013 egdaniel@google.com <egdaniel@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a map homogenous points to SkMatrix

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/22330004

git-svn-id: http://skia.googlecode.com/svn/trunk@10659 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
cb6222499625e78190a58e5a7df3ef8cc8e40f7a 09-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Removing deprecated constructors and setDevice from SkDeferredCanvas

R=senorblanco@google.com, senorblanco@chromium.org
BUR=crbug.com/270143

Author: junov@chromium.org

Review URL: https://chromiumcodereview.appspot.com/22385011

git-svn-id: http://skia.googlecode.com/svn/trunk@10657 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
a1007def7ed27c9bc71b6d6b8c097848f3731568 09-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix crash when querying a runtime config that is defined in environment

Fix crash when querying a runtime config in case when there's no
skia.conf file and the config variable is still defined in the
environment.

Runs the added SkRTConf::UnitTest test as part of new "UnitTest" test.

BUG=skia:1494
R=bsalomon@google.com, humper@google.com

Author: kkinnunen@nvidia.com

Review URL: https://chromiumcodereview.appspot.com/22650007

git-svn-id: http://skia.googlecode.com/svn/trunk@10654 2bbb7eff-a529-9590-31e7-b0007b416f81
nitTestTest.cpp
17f1ae63d57a3f3d3a0ae50e1b25b3f8b18fd328 09-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10650 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
c28f555f7f4259216a4a524cae6676ab2c56871a 09-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> This attempts to replicate some bad cache behavior Mozilla reported.

R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/22411005

git-svn-id: http://skia.googlecode.com/svn/trunk@10649 2bbb7eff-a529-9590-31e7-b0007b416f81
esourceCacheTest.cpp
b265741cc17f897b349caacdb890119e4111a415 08-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10603 (Remove operator== from SkPaint) due to Chrome failures



git-svn-id: http://skia.googlecode.com/svn/trunk@10632 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
d79277f67824392876b82cf5635cc11f819e64df 07-Aug-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Support decoding subsets from JPG on Android.

Previously we only supported it for the framework. Making this
change allows us to test subset decoding in skimage, to make sure
we don't break it.

Will require rebaselining android skimage results.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/21612003

git-svn-id: http://skia.googlecode.com/svn/trunk@10625 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
28621517f42682f1e028cbbf87c6afbf6e27a0f6 07-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix BGRA readback on Android

R=bsalomon@google.com, robertphillips@google.com

Author: snorp@snorp.net

Review URL: https://chromiumcodereview.appspot.com/22522002

git-svn-id: http://skia.googlecode.com/svn/trunk@10624 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
ritePixelsTest.cpp
7bb36ab259cd856ec8f03d2d377a34899c0ae51f 07-Aug-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build.

Use SkIntToScalar.

Reflect that 8888 can be copied to 4444 in BitmapCopyTest.

Unreviewed.

git-svn-id: http://skia.googlecode.com/svn/trunk@10623 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
9c9d4a70028ef8dc33a46cfc0b22e254443effe3 07-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Restore SkPath(const SkPath&) to copy the generation ID on Android.

BUG=
R=bsalomon@google.com, bungeman@google.com, reed@google.com

Review URL: https://codereview.chromium.org/22471002

git-svn-id: http://skia.googlecode.com/svn/trunk@10622 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
839702b61934914118ec557dd641be322eba3b5f 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Committed: https://code.google.com/p/skia/source/detail?r=10589

Committed: https://code.google.com/p/skia/source/detail?r=10592

Committed: https://code.google.com/p/skia/source/detail?r=10608

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10615 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
f7af91bd79daf7e090bd6ae1d080ad7a4964e477 07-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r10608 (Add getFamilyNames to SkTypeface) due to compilation failures



git-svn-id: http://skia.googlecode.com/svn/trunk@10609 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
246b1c266f2b0111aa58016829cf17de82614803 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Committed: https://code.google.com/p/skia/source/detail?r=10589

Committed: https://code.google.com/p/skia/source/detail?r=10592

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10608 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
37ffe8a5a38606b2099f6a93e82bf121cab92cc7 07-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove operator== from SkPaint

R=mtklein@google.com, reed@google.com

Author: sglez@google.com

Review URL: https://chromiumcodereview.appspot.com/21949007

git-svn-id: http://skia.googlecode.com/svn/trunk@10603 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
ad6477d02a61e8955e9fc1352c91fad7e2fc3c70 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Work around broken SkFontMgr_fontconfig.cpp for test.


git-svn-id: http://skia.googlecode.com/svn/trunk@10593 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
a980269c2498836101146adc729ef780fb89824e 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Committed: https://code.google.com/p/skia/source/detail?r=10589

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10592 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
7ca6d2f0709d844f6afc601738b9453b3543d38b 07-Aug-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r10589: Add getFamilyNames to SkTypeface


git-svn-id: http://skia.googlecode.com/svn/trunk@10590 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
990d85f02ba6efaf6f3d75262d7ed650edc8afd5 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10589 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
ea4b7970b9513d5ac3786ceab33a855b0b1b8577 06-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10554 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
0d9f5f76f7c456694e5ead4c4c184c1469b2c800 06-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> old compiler is dumb

BUG=

Review URL: https://codereview.chromium.org/22318002

git-svn-id: http://skia.googlecode.com/svn/trunk@10553 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
f916f9e7cf4403846c413acf8fec403e38cd8451 06-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> revise SkTDynamicHash and add unit tests
BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/22292004

git-svn-id: http://skia.googlecode.com/svn/trunk@10552 2bbb7eff-a529-9590-31e7-b0007b416f81
ynamicHashTest.cpp
2f683ba958488f29fdf117a7fab7d04390b4836d 05-Aug-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Temporarily disable GpuTestPath.


git-svn-id: http://skia.googlecode.com/svn/trunk@10532 2bbb7eff-a529-9590-31e7-b0007b416f81
puDrawPathTest.cpp
19dd017a6256be636ccb550752bb563c4e7caeb5 05-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a crash on stroking empty paths with nv_path_rendering enabled

Fix the crash by defining that GrPathRenderer::drawPath and
GrPathRenderer::stencilPath are called only with non-empty paths.

Adds a new test "GpuDrawPath" and tests the condition.

BUG=1477
R=bsalomon@google.com

Author: kkinnunen@nvidia.com

Review URL: https://chromiumcodereview.appspot.com/22173002

git-svn-id: http://skia.googlecode.com/svn/trunk@10528 2bbb7eff-a529-9590-31e7-b0007b416f81
puDrawPathTest.cpp
44324fae1c231bf262af24fc7f8a0f489ae5a490 02-Aug-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing SkDeferredCanvas::writePixels to trigger appropriate change notifications to SkSurface

BUG=crbug.com/256269
TEST=DeferredCanvas unit test, TestDeferredCanvasWritePixelsToSurface
R=reed@google.com

Review URL: https://codereview.chromium.org/20628005

git-svn-id: http://skia.googlecode.com/svn/trunk@10513 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
0cfa53d69f121ba65ae8466971f54c38081afe44 31-Jul-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r10377 into Android.

This CL also includes a cherry-pick of r10483 to fix
errors in the JPEG region decoder.

Conflicts:
include/core/SkUserConfig.h
src/images/SkImageDecoder.cpp
src/images/SkImageDecoder_libbmp.cpp
src/images/SkImageDecoder_libgif.cpp
src/images/SkImageDecoder_libico.cpp
src/images/SkImageDecoder_libjpeg.cpp
src/images/SkImageDecoder_libpng.cpp
src/images/SkImageDecoder_libwebp.cpp
src/images/SkImageDecoder_wbmp.cpp
src/ports/FontHostConfiguration_android.cpp
src/ports/FontHostConfiguration_android.h
src/ports/SkFontConfigInterface_android.cpp

Change-Id: I415ba6cfbb7ee41f4c8c5c01ec1bcc32345568d2
62df526042f8a753c6817ba9d809ff8dfc412d4a 01-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkPath::conservativelyContainsRect not assert on paths that begin with repeated moveTos

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/21565002

git-svn-id: http://skia.googlecode.com/svn/trunk@10484 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
58190644c30e1c4aa8e527f3503c58f841e0fcf3 26-Jul-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@10377

Change-Id: Id35b998cb70e867d14e58c2e794b9a742b1ef6d5
RGBImageEncoderTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapHasherTest.cpp
litRowTest.cpp
lurTest.cpp
anvasTest.cpp
hecksumTest.cpp
lipCacheTest.cpp
lipStackTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
mptyPathTest.cpp
itsInTest.cpp
ontHostTest.cpp
LProgramsTest.cpp
puBitmapCopyTest.cpp
mageCacheTest.cpp
mageDecodingTest.cpp
mageFilterTest.cpp
ayerDrawLooperTest.cpp
atrixTest.cpp
emsetTest.cpp
ipMapTest.cpp
SPathTest.cpp
aintTest.cpp
athOpsAngleTest.cpp
athOpsBoundsTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsSkpClipTest.cpp
athOpsTestCommon.cpp
athOpsTestCommon.h
athOpsThreadedCommon.h
athTest.cpp
athUtilsTest.cpp
ictureTest.cpp
treamTest.cpp
tringTest.cpp
SetTest.cpp
est.cpp
est.h
tilsTest.cpp
riter32Test.cpp
kia_test.cpp
algrind.supp
4d24b747e272355395f456e088a2d0177c00ddb5 26-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkImage_Gpu share it's pixelref with the surface to prevent premature return to scratch pool.

BUG=crbug.com/263329
TEST=Surface unit test, function Test_crbug263329
R=bsalomon@google.com, reed@google.com

Author: junov@chromium.org

Review URL: https://chromiumcodereview.appspot.com/20354003

git-svn-id: http://skia.googlecode.com/svn/trunk@10378 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
9bf380ce7f848dfb5886dd52b82746521454b739 25-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> drawBitmap* cleanup

https://codereview.chromium.org/19977003/



git-svn-id: http://skia.googlecode.com/svn/trunk@10342 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
5c561cb8d8151d38c69128345106cbf225033a1a 25-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10340 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
atrixTest.cpp
aintTest.cpp
194d775edcf5fa6e82098a97ad53018d70db1155 25-Jul-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> This patch implements a crop rect for SkImageFilter. It has been implemented for SkColorFilterImageFilter and SkBlurImageFilter as examples.

In order to preserve the immutability of SkImageFilters, the crop rect is passed as a constructor parameter. If NULL (the default), the bounds of the input image are used, as before.

This also tightens up the boundary handling for SkImageBlurFilter on the GPU backend. Where we were previously using clamping semantics, we now respect decal semantics (so we don't oversaturate the edges). This brings the GPU and raster backends into closer alignment, but will require some new baselines for the GPU tests.

At a minimum, the following tests will need new baselines: imageblur, imagefiltersbase, imagefilterscropped, spritebitmap.

R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10251

Review URL: https://codereview.chromium.org/19775006

git-svn-id: http://skia.googlecode.com/svn/trunk@10338 2bbb7eff-a529-9590-31e7-b0007b416f81
mageFilterTest.cpp
ff36a1d07f23f2b7feddaba110d448073a96f83c 24-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Start from scratch on a faster SkFlatDictionary.

This is like codereview.chromium.org/19276003, except it fits in better with the existing code, doesn't leak memory, and because it's back using SkChunkFlatController it's a little faster too, now a win across the board:

Slowdown bench
-1.59% desk_youtubetvbrowse.skp
-2.56% desk_googlehome.skp
-6.40% tabl_androidpolice.skp
-6.45% desk_youtubetvvideo.skp
-6.91% tabl_googlecalendar.skp
...
-29.70% desk_yahoogames.skp
-32.17% desk_googlespreadsheet.skp
-32.23% mobi_wikipedia.skp
-37.16% desk_chalkboard.skp
-41.57% desk_pokemonwiki.skp
Overall slowdown: -22.74%

running bench [640 480] picture_record_recurring_paint_dictionary NONRENDERING: cmsecs = 9.92
running bench [640 480] picture_record_unique_paint_dictionary NONRENDERING: cmsecs = 22.16
running bench [640 480] picture_record_dictionaries NONRENDERING: cmsecs = 9.18

BUG=

Committed: http://code.google.com/p/skia/source/detail?r=10328

R=tomhudson@google.com, reed@google.com, scroggo@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/19564007

git-svn-id: http://skia.googlecode.com/svn/trunk@10336 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
5174286bc5697e290d052fed994e8759fa5a4ed3 24-Jul-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Start from scratch on a faster SkFlatDictionary."

This reverts commit fec9bfa02d5d2b27bfa2dad3e37e5825a720784d.

git-svn-id: http://skia.googlecode.com/svn/trunk@10331 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
cae5d8d5705081cb4d22af7a30be0f01bffce745 24-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Start from scratch on a faster SkFlatDictionary.

This is like codereview.chromium.org/19276003, except it fits in better with the existing code, doesn't leak memory, and because it's back using SkChunkFlatController it's a little faster too, now a win across the board:

Slowdown bench
-1.59% desk_youtubetvbrowse.skp
-2.56% desk_googlehome.skp
-6.40% tabl_androidpolice.skp
-6.45% desk_youtubetvvideo.skp
-6.91% tabl_googlecalendar.skp
...
-29.70% desk_yahoogames.skp
-32.17% desk_googlespreadsheet.skp
-32.23% mobi_wikipedia.skp
-37.16% desk_chalkboard.skp
-41.57% desk_pokemonwiki.skp
Overall slowdown: -22.74%

running bench [640 480] picture_record_recurring_paint_dictionary NONRENDERING: cmsecs = 9.92
running bench [640 480] picture_record_unique_paint_dictionary NONRENDERING: cmsecs = 22.16
running bench [640 480] picture_record_dictionaries NONRENDERING: cmsecs = 9.18

BUG=
R=tomhudson@google.com, reed@google.com, scroggo@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/19564007

git-svn-id: http://skia.googlecode.com/svn/trunk@10328 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
588f3d3896ce84a00ba0b229a4fe8fff2bf67516 24-Jul-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change double constants to floats.

git-svn-id: http://skia.googlecode.com/svn/trunk@10327 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
08284e4d2421fb6c1978e68038a3568711cd9877 24-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add basic SVD support to SkMatrix. Allows you to pull out the x- and y-scale factors, sandwiched by two rotations.

R=reed@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/19569007

git-svn-id: http://skia.googlecode.com/svn/trunk@10322 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
586db93c447b753364d50fadc5426de4fef9a759 24-Jul-2013 sglez@google.com <sglez@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> refactor duplication (shouldSkip and skip_name) into a utility function

R=caryclark@google.com, reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10280

Review URL: https://codereview.chromium.org/19807005

git-svn-id: http://skia.googlecode.com/svn/trunk@10317 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
2c38fed29df8fef80ce8268841e8506e2ceb19e7 24-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use sk_bzero to init level, since I got the number of 0s wrong using { }

git-svn-id: http://skia.googlecode.com/svn/trunk@10308 2bbb7eff-a529-9590-31e7-b0007b416f81
ipMapTest.cpp
58c856a54a75e703aa3c82a0cd4e1affd9bd8ffc 24-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r10251 (Implement crop rect for SkImageFilter) due to Chromium-side unit test failures



git-svn-id: http://skia.googlecode.com/svn/trunk@10304 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
7f1af501f206da48a7ff791af53432c9c1c89d08 24-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10299 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
ayerDrawLooperTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
a7aa810894ae85306541ed949848a4dd7f907a0b 24-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Deterministic SkTSet and PDF Output

Addresses this issue: https://code.google.com/p/skia/issues/detail?id=1277

R=edisonn@google.com, vandebo@chromium.org

Author: richardlin@chromium.org

Review URL: https://chromiumcodereview.appspot.com/19283005

git-svn-id: http://skia.googlecode.com/svn/trunk@10298 2bbb7eff-a529-9590-31e7-b0007b416f81
SetTest.cpp
70d75ca764e16e15f016e423b85a0fa2a29fb8c7 23-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkChecksum::Murmur3.
BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/19500020

git-svn-id: http://skia.googlecode.com/svn/trunk@10292 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
0e66162161a09d30e70c51425ed7314a1d21ce53 23-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix signed/unsigned warning

git-svn-id: http://skia.googlecode.com/svn/trunk@10287 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
602a1d70257eb3fcb746d758577f042d8c94f6d9 23-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add scaledimagecache

BUG=

Review URL: https://codereview.chromium.org/20005003

git-svn-id: http://skia.googlecode.com/svn/trunk@10286 2bbb7eff-a529-9590-31e7-b0007b416f81
mageCacheTest.cpp
ed5eb4ef2aa1d6c705bc3ed466f9caba2a230a2b 23-Jul-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10280, which caused https://code.google.com/p/skia/issues/detail?id=1441

Review URL: https://codereview.chromium.org/19537005

git-svn-id: http://skia.googlecode.com/svn/trunk@10284 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
434251f87292808c1c461e48dba5d22735e74f97 23-Jul-2013 sglez@google.com <sglez@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> refactor duplication (shouldSkip and skip_name) into a utility function

R=caryclark@google.com, reed@google.com

Review URL: https://codereview.chromium.org/19807005

git-svn-id: http://skia.googlecode.com/svn/trunk@10280 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
4fdbb229649caf74e5c1b55a1823926df903af34 23-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> turn off debugging printfs

fix pathops issues 1417, 1418

be more rigorous about pulling intersections of lines to end points
rewrite cubic/line and quad/line intersections to share style

BUG=

Review URL: https://codereview.chromium.org/19543005

git-svn-id: http://skia.googlecode.com/svn/trunk@10270 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsDLineTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
3e2ea2565d12e572a977fa04b4b1996c8eb3fefc 23-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> I don't want these changes as part of the "allow bleeding" CL.

R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/19842002

git-svn-id: http://skia.googlecode.com/svn/trunk@10256 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ayerDrawLooperTest.cpp
6ae6383f56704928838032ce6c46829e06201853 23-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10254 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
9cfc83cc8ac2ee50a7ce889e65a707941f48bdea 22-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> stop using bitmap-filter flags outside of paint itself, as a step towards really changing them into an enum

BUG=

Review URL: https://codereview.chromium.org/19825002

git-svn-id: http://skia.googlecode.com/svn/trunk@10240 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
c29f3d8c6dec938fd0599db30cae590fcaa2108b 20-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a detachAsStream to SkDynamicMemoryWStream.

R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10171

Committed: https://code.google.com/p/skia/source/detail?r=10178

Review URL: https://codereview.chromium.org/19677002

git-svn-id: http://skia.googlecode.com/svn/trunk@10218 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
88682b77d108a7413a166e3158e187f43211c46b 19-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a detachAsStream to SkDynamicMemoryWStream.

R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10171

Review URL: https://codereview.chromium.org/19677002

git-svn-id: http://skia.googlecode.com/svn/trunk@10178 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
a79919883e275e7a5e00afc50be10cc721f6ba1d 19-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10175 2bbb7eff-a529-9590-31e7-b0007b416f81
ipMapTest.cpp
6eee5c3ec4eb9848c1ab5a54704592d62983d099 19-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10171 due to test failure in StreamTest



git-svn-id: http://skia.googlecode.com/svn/trunk@10172 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
eacb54e174f3b6aa999087d4ce0b879bfe5829c1 19-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a detachAsStream to SkDynamicMemoryWStream.

R=reed@google.com

Review URL: https://codereview.chromium.org/19677002

git-svn-id: http://skia.googlecode.com/svn/trunk@10171 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
9a47ed785fbd6433786bf4feeb8c955aaa25b01e 18-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use { 0, 0, 0, 0 } to fix warning

git-svn-id: http://skia.googlecode.com/svn/trunk@10167 2bbb7eff-a529-9590-31e7-b0007b416f81
ipMapTest.cpp
7437bfb9fabf962e37f212fce53224cdc0317c30 18-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> init prevLevel to avoid warning

git-svn-id: http://skia.googlecode.com/svn/trunk@10166 2bbb7eff-a529-9590-31e7-b0007b416f81
ipMapTest.cpp
826d63af970dca7c47f4cded1cfcb918bc5785a9 18-Jul-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add test to ensure buildTileIndex stores SkStream.

PNG fails this test without https://codereview.chromium.org/19185006/

R=djsollen@google.com

Review URL: https://codereview.chromium.org/19555004

git-svn-id: http://skia.googlecode.com/svn/trunk@10163 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
eed6f1b76b6690796e3d40993b1504ba1eca2df5 18-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pull mipmap class into its own (private) header

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/19462007

git-svn-id: http://skia.googlecode.com/svn/trunk@10161 2bbb7eff-a529-9590-31e7-b0007b416f81
ipMapTest.cpp
f698c8262df397a7015662e91b1a727e1134c418 18-Jul-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow decoding JPEG into A8.

If the original image is grayscale, allow decoding into A8.

Change the size of PrefConfigTable to allow for 8bit gray, a new source config.

Add a new sampler to SkScaledBitmapSampler to 'convert' to A8.

FIXME: Should there be a dithered option for gray scale?

R=reed@google.com

Review URL: https://codereview.chromium.org/18083026

git-svn-id: http://skia.googlecode.com/svn/trunk@10157 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
fd03d4a829efe2d77a712fd991927c55f59a2ffe 17-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace all instances of GrRect with SkRect.

And remove the typedef in GrRect.h. The same with GrIRect.

R=robertphillips@google.com

Author: tfarina@chromium.org

Review URL: https://chromiumcodereview.appspot.com/19449002

git-svn-id: http://skia.googlecode.com/svn/trunk@10130 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
eebe6f4a59c9ff99df3c8f0de37192e080ae7f94 17-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10122 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsTestCommon.cpp
50df63148630ab1bf953789cb425ef068b8ab713 16-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> NIT MASTER 9000




fixed nits

BUG=
R=robertphillips@google.com

Author: dierk@google.com

Review URL: https://chromiumcodereview.appspot.com/19394004

git-svn-id: http://skia.googlecode.com/svn/trunk@10112 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
b92f9fb0f5abbb9129032fc0ebdc6bd358a06083 16-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> More PathUtilsTest.cpp nits

Reordered the includes, changed define to a constant global var.





more PathUtils Nits

BUG=
R=robertphillips@google.com, tfarina@chromium.org

Author: dierk@google.com

Review URL: https://chromiumcodereview.appspot.com/19272014

git-svn-id: http://skia.googlecode.com/svn/trunk@10110 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
40f960edc0fd141093ea942d9aa66fe67aad8ce7 16-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed PathUtils nits.





Fixed PathUtils nits

BUG=
R=robertphillips@google.com

Author: dierk@google.com

Review URL: https://chromiumcodereview.appspot.com/19392002

git-svn-id: http://skia.googlecode.com/svn/trunk@10108 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
8d0a524a4847bc7e1cc63a93b78922739466c201 16-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> harden and speed up path op unit tests

PathOps tests internal routines direcctly. Check to make sure that
test points, lines, quads, curves, triangles, and bounds read from
arrays are valid (i.e., don't contain NaN) before calling the
test function.

Repurpose the test flags.
- make 'v' verbose test region output against path output
- make 'z' single threaded (before it made it multithreaded)

The latter change speeds up tests run by the buildbot by 2x to 3x.

BUG=

Review URL: https://codereview.chromium.org/19374003

git-svn-id: http://skia.googlecode.com/svn/trunk@10107 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsBoundsTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsTestCommon.cpp
athOpsTestCommon.h
est.cpp
kia_test.cpp
977409aceb949a9e834a9fb181a0581792d044cf 16-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10096 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
5ec2b1ee8a8265c0d46092c801407073f46b3451 15-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> call newOneOff instead of oneOff

calling the latter instead of the former walked off the end of the
array causing mysterious bugs

TODO: safeguard against NaNs in the input

BUG=

Review URL: https://codereview.chromium.org/19280002

git-svn-id: http://skia.googlecode.com/svn/trunk@10093 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
7bdd614a1940935d3badeb54f7aae75d76ea830d 15-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement onCountGlyphs and onGetUPEM on Windows.

R=vandebo@chromium.org

Review URL: https://codereview.chromium.org/19231003

git-svn-id: http://skia.googlecode.com/svn/trunk@10089 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
b4a2855b66da0c1c9874f3a4928750abd95ec4b2 15-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build error



git-svn-id: http://skia.googlecode.com/svn/trunk@10086 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
226d508539fb96292bad268084b633023500a3ef 15-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PathUtilsTest valgrind patch

https://codereview.chromium.org/18401005/



git-svn-id: http://skia.googlecode.com/svn/trunk@10085 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
8dcea7dcf96aeed5cf8d3afdf62330d73dd93c71 15-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix compiler warning/error in r10079



git-svn-id: http://skia.googlecode.com/svn/trunk@10081 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
3dd2784cb7409d969f91d8948c315b9d24a84d0b 15-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add florin tests

hopefully fix build

BUG=

Review URL: https://codereview.chromium.org/19183005

git-svn-id: http://skia.googlecode.com/svn/trunk@10079 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsOpTest.cpp
791d0de747e1d5631f171744d74dab808c90511e 15-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix linux point compare

fix linux pt compare

BUG=

Review URL: https://codereview.chromium.org/19203002

git-svn-id: http://skia.googlecode.com/svn/trunk@10076 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsSimplifyTest.cpp
2d3b49201302f3f82e405a750724eae8ef82e5a0 15-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove possiblity of NULL effect in GrEffectStage

R=jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/18295008

git-svn-id: http://skia.googlecode.com/svn/trunk@10075 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
fa2aeee27af27f2934ee52a9732148f66481fb03 15-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops near exact

Modify line intersections to first
- match exact ends
- compute intersections
- match near ends
where the exact ends are preferred, then near matches, then
computed matches. This pulls matches towards existing end points
when possible, and keeps intersection distances consistent with
different line/line line/quad and line/cubic computations.

BUG=

Review URL: https://codereview.chromium.org/19183003

git-svn-id: http://skia.googlecode.com/svn/trunk@10073 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsExtendedTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSkpClipTest.cpp
c2050e3a3ecfb8738b36e2add15c526e8e0f21fe 15-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> ARM Skia NEON patches - 01 - Simple fixes

This series contains a few fairly non-controversial fixes.





Misc: remove dead references to neon 4444 functions

Misc: avoid the double _neon_neon suffix in the clamp matrix functions.
MAKENAME already adds the _neon suffix

Misc: a few stupid / obvious fixes

BUG=
R=djsollen@google.com

Author: kevin.petit.arm@gmail.com

Review URL: https://chromiumcodereview.appspot.com/18666004

git-svn-id: http://skia.googlecode.com/svn/trunk@10072 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
rawBitmapRectTest.cpp
9c96d4b5ffdbf8c82f55b2058a2fea7225fe11d6 14-Jul-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix trivial matrix computation

Revert "Reverted 10056-10059"

This reverts commit bab4ebcaa7270c3b866a8e10917c39b055ebd51a.

Fix broken GM test, reintroduce image scaling.

BUG=

Review URL: https://codereview.chromium.org/18721006

git-svn-id: http://skia.googlecode.com/svn/trunk@10066 2bbb7eff-a529-9590-31e7-b0007b416f81
itsInTest.cpp
tilsTest.cpp
7e4d99acefe57a599a407e0a5d23452506c68e26 13-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions



git-svn-id: http://skia.googlecode.com/svn/trunk@10065 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
0408a346962ef0939704fe435a0cdde52da4613f 13-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions



git-svn-id: http://skia.googlecode.com/svn/trunk@10061 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
d647426714a96d42faff8ea53464343b29b427cd 13-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverted 10056-10059



git-svn-id: http://skia.googlecode.com/svn/trunk@10060 2bbb7eff-a529-9590-31e7-b0007b416f81
itsInTest.cpp
tilsTest.cpp
fa1bd5f86ceea6cfa8303594730125ad2853d87b 13-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10059 2bbb7eff-a529-9590-31e7-b0007b416f81
itsInTest.cpp
tilsTest.cpp
400798ad857df418e122302a11859502eb1af548 12-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix valgrind suppressions file



git-svn-id: http://skia.googlecode.com/svn/trunk@10054 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
4d3767373942c55be893d3bbbfe35e1975c2e1b4 12-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix leak in SkAutoSTArray

https://codereview.chromium.org/18915010/



git-svn-id: http://skia.googlecode.com/svn/trunk@10053 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
f5cc5b140c1c00c536e02b5cfbe158bb2d5c2c15 12-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> R=mtklein@google.com

Review URL: https://codereview.chromium.org/18503009

git-svn-id: http://skia.googlecode.com/svn/trunk@10050 2bbb7eff-a529-9590-31e7-b0007b416f81
itsInTest.cpp
cfe8aa6f560e0eb1d337d6d19432138aa9be9fd7 12-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions

(SkipBuildbotRuns)



git-svn-id: http://skia.googlecode.com/svn/trunk@10048 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
2cab8f75735ae440ebc16da10b2eda60da422570 12-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions

(SkipBuildbotRuns)



git-svn-id: http://skia.googlecode.com/svn/trunk@10031 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
49c6b43812d7100d235ce3d95eb00ec9125e7564 10-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions

(SkipBuildbotRuns)



git-svn-id: http://skia.googlecode.com/svn/trunk@9951 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
fe433c13705bc626b67198097109984ce851d437 09-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> When gather pixel refs was broken, REPORTER_ASSERT(data) realized that data was NULL, but subsequent lines dereferenced it anyway, and so segfaulted.

R=reed@google.com, tomhudson@google.com

Author: tomhudson@chromium.org

Review URL: https://chromiumcodereview.appspot.com/18904003

git-svn-id: http://skia.googlecode.com/svn/trunk@9933 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
cb6d97ca718c0335dde678bb64169f6de70b62d6 09-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of r9902 (Consider conical shader opaque if it covers
entire plane - https://chromiumcodereview.appspot.com/18533006) due to roll issues (https://codereview.chromium.org/18859007/)



git-svn-id: http://skia.googlecode.com/svn/trunk@9926 2bbb7eff-a529-9590-31e7-b0007b416f81
radientTest.cpp
5d367c455c568106d928289f7a4c9b0cb5890479 09-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions

(SkipBuildbotRuns)



git-svn-id: http://skia.googlecode.com/svn/trunk@9923 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
a4aced47281e085201a356ce888b92138846e9f6 09-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9919 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicLineIntersectionTest.cpp
d7a1eea159211e1c1697bbf7e7eceb15d89843f2 08-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> More valgrind suppressions

(SkipBuildbotRuns)



git-svn-id: http://skia.googlecode.com/svn/trunk@9909 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
07e97fccd2d85076cd22ef411b0773ab92a18abe 08-Jul-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops work in progress

BUG=

Review URL: https://codereview.chromium.org/18058007

git-svn-id: http://skia.googlecode.com/svn/trunk@9908 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsThreadedCommon.h
est.h
kia_test.cpp
5e6c3557f8254d3f73f37f322f7560f7594ea793 04-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Consider conical shader opaque if it covers entire plane.

BUG=222380
R=junov@chromium.org, senorblanco@chromium.org, reed@google.com

Author: arbesfeld@chromium.org

Review URL: https://chromiumcodereview.appspot.com/18533006

git-svn-id: http://skia.googlecode.com/svn/trunk@9902 2bbb7eff-a529-9590-31e7-b0007b416f81
radientTest.cpp
9c4c3de53ca89ec8eb2f0a302b307f4f2108b52d 03-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> valgrind suppressions for tests & gm

https://codereview.chromium.org/18332016/



git-svn-id: http://skia.googlecode.com/svn/trunk@9889 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
491493119c11206c5823b76eb6420a705be243a1 03-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add canFilterMaskGPU & filterMaskGPU to SkMaskFilter

https://codereview.chromium.org/18110012/



git-svn-id: http://skia.googlecode.com/svn/trunk@9888 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
98a196770cc7b9914ad68367c5b06829a5e0b440 03-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9882 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
738e02c6f807782b165ed193a5f3b331e7d6c4ea 02-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Update tests valgrind suppressions

R=borenet@google.com

Author: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/18510005

git-svn-id: http://skia.googlecode.com/svn/trunk@9871 2bbb7eff-a529-9590-31e7-b0007b416f81
algrind.supp
c3eb56db6b88255be79d2daa210da1a6aba64051 02-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use if (false) instead of #ifdef to avoid unused code warning

git-svn-id: http://skia.googlecode.com/svn/trunk@9861 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
bcb42aecf1bdb9ae80d766d203b4f636b954cf03 02-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add charsToGlyphs to SkTypeface

Will disable new unittest until all backends are implemented.

On Mac, new API is 4x faster than old paint one, so next CL I will reimplement the paint calls in terms of the new typeface call.

R=eae@chromium.org

Review URL: https://codereview.chromium.org/18083023

git-svn-id: http://skia.googlecode.com/svn/trunk@9860 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
0d55dd7d2c07a77b22478bed9b30ff44ceecad68 02-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9856 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
f8846504c79bc547c2dadbd48b91767594328d20 02-Jul-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Yet another fix for Win7 compiler errors/warnings



git-svn-id: http://skia.googlecode.com/svn/trunk@9854 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
a950551018d42394e94d170cbde27ac241f36884 01-Jul-2013 dierk@google.com <dierk@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed non-constant array size in test.

Merge remote-tracking branch 'refs/remotes/git-svn'

Fixed non-constant array size in test.

Merge remote-tracking branch 'refs/remotes/git-svn'

fixed SkPathUtils.cpp:78

Fixed PathUtils.cpp:90

Fixed the float being passed to an int method

Fixed the bugs that crashed the build bots

git-svn-id: http://skia.googlecode.com/svn/trunk@9848 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
064779aa18694b68536c113f7d5b74ccbe38d3ba 01-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding my Bitmap2Path sample for 1on1 meeting.

BUG=
R=reed@google.com, borenet@google.com

Author: dierk@google.com

Review URL: https://chromiumcodereview.appspot.com/16829003

git-svn-id: http://skia.googlecode.com/svn/trunk@9843 2bbb7eff-a529-9590-31e7-b0007b416f81
athUtilsTest.cpp
a6ff36bd61a20077a93223d90bc97dce65f2e7e8 29-Jun-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9826 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapGetColorTest.cpp
f1754ec69131801c1a6ed3c704501a9400bbf324 28-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace SkPicture(SkStream) constructors with a factory.

SkPicture:
Remove the constructors which take an SkStream as an argument. Rather
than having to check a variable for success, the factory will return
NULL on failure.
Add a protected function for determining if an SkStream is an SKP
to share code with SkTimedPicture.
In the factory, check for a NULL SkStream.
Use a default decoder (from BUG:
https://code.google.com/p/skia/issues/detail?id=1325)

SkDebuggerGUI:
Call SkPicture::CreateFromStream when necessary.
Write a factory for creating SkTimedPictures and use it.

Use the factory throughout tools.

Add include/lazy to utils and effects gyp include_dirs so SkPicture.h
can reference SkImageDecoder.h which references SkBitmapFactory.h (in
include/lazy).

Changes code Chromium uses, so this will require a temporary Skia
and then a change to Chromium to use the new Skia code.

TODO: Create a decoder that does nothing to be used by pinspect,
lua pictures, etc, and allow it to not assert in SkOrderedReadBuffer.

R=reed@google.com

Review URL: https://codereview.chromium.org/17113004

git-svn-id: http://skia.googlecode.com/svn/trunk@9822 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
60d3235ab42bd1d32a070695ee30d6e3ec2fa222 28-Jun-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add bitmap::eraseArea

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/18029021

git-svn-id: http://skia.googlecode.com/svn/trunk@9815 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapGetColorTest.cpp
2cb1480ff8ae030946cb5f218f9c5cbc1e54c7a9 26-Jun-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove kRLE_Index8_Config from SkBitmap

BUG=
R=djsollen@google.com

Review URL: https://codereview.chromium.org/17740003

git-svn-id: http://skia.googlecode.com/svn/trunk@9764 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
8fd160350ca5f57fbb1b2e03383c5778414a9b48 25-Jun-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r9724 (add rect-output parameter to isRect) to allow the DEPS roll



git-svn-id: http://skia.googlecode.com/svn/trunk@9750 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
020b25becb4a99061e8643780c887ad472eb0648 22-Jun-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9738 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
ea33808d32468bc452f0486e2effa9567e869513 21-Jun-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove dead AutoValidator

git-svn-id: http://skia.googlecode.com/svn/trunk@9729 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
6ba4572eed5a4ecfdd22d118fa55b5c06902b574 21-Jun-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove dst/rendertarget support for kARGB_4444_Config

BUG=

Review URL: https://codereview.chromium.org/17335008

git-svn-id: http://skia.googlecode.com/svn/trunk@9727 2bbb7eff-a529-9590-31e7-b0007b416f81
RGBImageEncoderTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
itmapHasherTest.cpp
puBitmapCopyTest.cpp
da2b21fa9ba43df374f21b0e05d9816ab1dfb876 21-Jun-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add rect-output parameter to isRect, allowing us to return the correct bounds even if a rectagular path has a trailing moveTo

https://code.google.com/p/chromium/issues/detail?id=247770

R=caryclark@google.com

Review URL: https://codereview.chromium.org/16950021

git-svn-id: http://skia.googlecode.com/svn/trunk@9724 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
a5809a3e4cb356387c5201ab9c0a10edf11a01be 21-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkPath::rewind needs to have same reset as SkPath::reset.

R=caryclark@google.com, reed@google.com

Review URL: https://codereview.chromium.org/17432003

git-svn-id: http://skia.googlecode.com/svn/trunk@9718 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
6757a3c71fd6c16af6bbd76f268307f0177b17ae 19-Jun-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> combine glyph and image bulk alloc, and adjust initial alloc size, to reduce total waste from 50% to 30%

add diagnostics to measure cache efficiency

BUG=

Review URL: https://codereview.chromium.org/17449012

git-svn-id: http://skia.googlecode.com/svn/trunk@9691 2bbb7eff-a529-9590-31e7-b0007b416f81
emsetTest.cpp
d88a3d83364d2158a6fad9cb295012fac0e07ea3 19-Jun-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkString::appendU32() and SkString::appendU64()
as needed to re-land r9682

R=reed@google.com

Review URL: https://codereview.chromium.org/17448012

git-svn-id: http://skia.googlecode.com/svn/trunk@9686 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
1f7928663f417253f2f75f42625d514dc5f26b9a 18-Jun-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor: clean up some unused or mostly-unused API I saw here.

BUG=
R=bungeman@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/17414003

git-svn-id: http://skia.googlecode.com/svn/trunk@9668 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
mptyPathTest.cpp
treamTest.cpp
est.cpp
est.h
kia_test.cpp
d892bd8ba676d34d4ce4a73ac7aad88e102fad70 17-Jun-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> convert pathops to use SkSTArray where possible.

Replace SkTDArray with SkTArray and use SkSTArray when
the probable array size is known.

In a couple of places (spans, chases) the arrays are
constructed using insert() so SkTArrays can't be used for
now.

Also, add an optimization to cubic subdivide if either end
is zero or one.

BUG=

Review URL: https://codereview.chromium.org/16951017

git-svn-id: http://skia.googlecode.com/svn/trunk@9635 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsTestCommon.cpp
athOpsTestCommon.h
daaea2d51f145fd43221a2b923721b218c8ff777 14-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixes for unpremul decode.

SkImageDecoder_CG.cpp:
If a non opaque bitmap was decoded, and the caller wants
unpremultiplied, unpremultiply the colors.

Always use the RGB colorspace, since the other colorspaces
do not match the desired bitmap format.

ImageDecodingTest:
Allow for a difference of 1 in each color component when comparing
the result of premultiplying the unpremultiplied decode with the
premultiplied decode, since I found an image (in WEBP format) where
the unpremultiplied colors did not compare perfectly in my comparison.

R=reed@google.com

Review URL: https://codereview.chromium.org/17084012

git-svn-id: http://skia.googlecode.com/svn/trunk@9628 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
2bbc2c945bb0ecf18fd6473af74ad1a2f5e727a7 14-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an option to create unpremultiplied bitmaps.
Currently they cannot be used directly by Skia, but
the pixels can be used elsewhere.

SkImageDecoder:
Add functions to require unpremultiplied output
and query the presence of the requirement

SkImageDecoder_libpng:
SkImageDecoder_libwebp:
SkImageDecoder_WIC:
Respect the requirement for unpremultiplied output.
TODO: Fix SkImageDecoder_CG.

SkScaledBitmapSampler:
Add procs to skip premultiplication and a boolean
parameter to use those procs.

ImageDecodingTest:
Test unpremultiplied bitmap decoding.

SampleUnpremul:
Add a sample which allows visually comparing between the
unpremultiplied version (copied into a premultiplied bitmap,
since drawing unpremultiplied is not currently supported)
and a premultiplied version of image files.

gm.h:
Add a getter for the resource path, so Samples can use it.

As of patch set 13, https://codereview.chromium.org/16816016/
and https://codereview.chromium.org/16983004/, which were
approved separately.

R=reed@google.com

Review URL: https://codereview.chromium.org/16410009

git-svn-id: http://skia.googlecode.com/svn/trunk@9612 2bbb7eff-a529-9590-31e7-b0007b416f81
mageDecodingTest.cpp
eb6879f50a5564eeb981ec5616b55bf685eb76fc 13-Jun-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace fixed-size array of effect stages in GrDrawState with two appendable arrays, one for color, one for coverage.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/16952006

git-svn-id: http://skia.googlecode.com/svn/trunk@9592 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
6fbe54c663bd0eed6f6519c31a4c8e291db2613b 11-Jun-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Compact the clipstack for kReplace_Op'd geometry

When adding a clip rect or clip path to the stack with the
kReplace_Op operation, remove all previous elements within the
same save frame (elements with fSaveCount equal to the current
fSaveCount of the stack). This prevents unbounded growth of the
clipstack for long-lived instances that gets reused.

Addresses https://code.google.com/p/skia/issues/detail?id=748

R=robertphillips@google.com

Author: fs@opera.com

Review URL: https://chromiumcodereview.appspot.com/16160020

git-svn-id: http://skia.googlecode.com/svn/trunk@9502 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
99d43ffcfbed84aac33a45e1eb725bb684cdc2e7 07-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for caller of GetTmpDir.

Since I changed GetTmpDir to create an SkString each time, it
needs to be assigned to a variable in order for it to stick around.
Update a test which I missed because my client was out of date.

Review URL: https://codereview.chromium.org/15719006

git-svn-id: http://skia.googlecode.com/svn/trunk@9475 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
2c84aa35988c661b3e5513c8ba9b3959832ff288 06-Jun-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> separate arrays for color and coverage effects.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/16180006

git-svn-id: http://skia.googlecode.com/svn/trunk@9465 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
c76218d5edf08f1b73dc06a92e3af52ed268e7ba 06-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix bug in setting directories for tests.

make_canonical_dir_path only worked if the provided directory
did not end with a slash. Remove this function, and call
SkPathJoin instead. Update the documentation to acknowledge
that this is an acceptable use of SkPathJoin, and update its
test.

R=epoger@google.com

Review URL: https://codereview.chromium.org/16098011

git-svn-id: http://skia.googlecode.com/svn/trunk@9458 2bbb7eff-a529-9590-31e7-b0007b416f81
SPathTest.cpp
treamTest.cpp
est.h
kia_test.cpp
8f6ef4010f6835c5ce9ede180e50a6a58512a81e 05-Jun-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9440 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
20d5461df766aa34592c7c33f2a8a4fd28fd2d8a 04-Jun-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops -- try to fix build again

Review URL: https://codereview.chromium.org/15994019

git-svn-id: http://skia.googlecode.com/svn/trunk@9434 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
4b66f367b495f7356450649226eb0a91bff30989 04-Jun-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops work in progress

do not check in

Review URL: https://codereview.chromium.org/14865019

git-svn-id: http://skia.googlecode.com/svn/trunk@9433 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
cffbcc3b9665f2c928544b6fc6b8a0e22a4210fb 04-Jun-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops -- rewrite angle sort

This is a major change resulting from a minor
tweak. In the old code, the intersection point
of two curves was shared between them, but the
intersection points and end points of sorted edges was
computed directly from the intersection T value.

In this CL, both intersection points and sorted points
are the same, and intermediate control points are computed
to preserve their slope.

The sort itself has been completely rewritten to be more
robust and remove 'magic' checks, conditions that empirically
worked but couldn't be rationalized.

This CL was triggered by errors generated computing the clips
of SKP files. At this point, all 73M standard tests work and
at least the first troublesome SKPs work.

Review URL: https://codereview.chromium.org/15338003

git-svn-id: http://skia.googlecode.com/svn/trunk@9432 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsLineParametetersTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsTestCommon.cpp
11f2b444500d552031fcae0b381a0770600400fd 04-Jun-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9423 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
11c9a55afd95078d14ab8cd7c1c5c0032af2a498 03-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkData::NewFromFD.

Chromium needs a SkStream backed by a file descriptor.
Skia already has the code and can do the work, this change exposes the
functionality in Skia in a clean way.

https://codereview.chromium.org/15941025/


git-svn-id: http://skia.googlecode.com/svn/trunk@9408 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
277c3f87656c44e0a651ed0dd56efa16c0ab07b4 31-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> bump picture version since SkPath has changed (conics)

enable conics in SkPath

git-svn-id: http://skia.googlecode.com/svn/trunk@9370 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athTest.cpp
fa2f2a48f6822b88ab895fece1998af549c16ebe 30-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "add asserts to point<-->verb helpers"

This reverts commit b4775ac7b55802e87231768f002e4b42f233b0aa.

git-svn-id: http://skia.googlecode.com/svn/trunk@9347 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athTest.cpp
7950a9eba71f65365d88021680a16f245ad3fa68 30-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add asserts to point<-->verb helpers

patch from issue 16153005

BUG=

Review URL: https://codereview.chromium.org/16195004

git-svn-id: http://skia.googlecode.com/svn/trunk@9344 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athTest.cpp
6cab1a4b6a68aa81237731308ff37a646d48f51c 29-May-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkStream.
https://codereview.chromium.org/15298009/


git-svn-id: http://skia.googlecode.com/svn/trunk@9312 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
0a4805e33f8ddb445a2fd061462e715e1707f049 29-May-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> First pass at Comment API

https://codereview.chromium.org/13957009/



git-svn-id: http://skia.googlecode.com/svn/trunk@9310 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
66070a527c480d1cef5f7f7136f68d4f17b68f06 28-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Changing SkDeferredCanvas to use factories for creation

The objective of this change is to remove all calls to
SkCanvas::setDevice. The factory API is hidden behind
a build flag in order to ease the roll into chromium.

A side-effect of the factory pattern is that it will
no longer be possible to allocate a SkDeferredCanvas on
the stack. This changes nothing for chrome, but it
impacts skia test programs.

Review URL: https://codereview.chromium.org/16040002

git-svn-id: http://skia.googlecode.com/svn/trunk@9298 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
e7e8691b08f0cf2292ff470ada84e03ded358075 28-May-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r9286 into android.

Conflicts:
include/core/SkFontHost.h
include/core/SkPaint.h
include/core/SkScalar.h
include/ports/SkTypeface_android.h
src/core/SkPaint.cpp
src/core/SkScalerContext.cpp
src/core/SkScalerContext.h

bug: 8719528
Change-Id: Icf2f43cfaacc6f0a0fa1965b2c1f4d2b957e9982
ccd7afb6fb2df9774e57fb4d7f62f9504cabf03e 28-May-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland 'Add path utils, plus a test for it.'

Build SkPathJoin and SkBasename on windows also.

Previous CL did not build on Windows because the two functions were
accidentally placed inside an ifdef that did not include windows.
Move the functions to the top of the file, and add a comment by the
endif for clarity.

Previously reviewed at https://codereview.chromium.org/15747004/

Review URL: https://codereview.chromium.org/15740024

git-svn-id: http://skia.googlecode.com/svn/trunk@9295 2bbb7eff-a529-9590-31e7-b0007b416f81
SPathTest.cpp
779bf8a99dc7f03e5c43b26d4b85d7920ce89aee 28-May-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@9286

Change-Id: I07f49058086dc8e7893cf10d33fca6773bf5508e
itmapHasherTest.cpp
eferredCanvasTest.cpp
LProgramsTest.cpp
ayerDrawLooperTest.cpp
aintTest.cpp
dbbcaa8983c866187cdca6944717a72461bc8037 24-May-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Add path utils, plus a test for it."

This reverts commit d172374b46cae0bd5d7c024b9848f5bdafcc6a16.

This CL broke on Windows.

Review URL: https://codereview.chromium.org/15986004

git-svn-id: http://skia.googlecode.com/svn/trunk@9278 2bbb7eff-a529-9590-31e7-b0007b416f81
SPathTest.cpp
1bee03704408fad8df334f6193267774bb21231b 24-May-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add path utils, plus a test for it.

SkOSFile:
Added class SkOSPath with functions for
modifying strings representing path names.

OSPathTest.cpp:
Test of the new utilities.

factory.cpp:
Use SkPathJoin.

gmmain and gm_expectations:
Use SkOSPath::SkPathJoin instead of a local version.

skimage_main.cpp:
Use the new location of SkPathJoin and SkBasename.

R=epoger@google.com

Review URL: https://codereview.chromium.org/15747004

git-svn-id: http://skia.googlecode.com/svn/trunk@9277 2bbb7eff-a529-9590-31e7-b0007b416f81
SPathTest.cpp
7070f76b90b098b4713bc0d13dc129adea64d7ef 24-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding setSurface public API method to SkDeferredCanvas

The purpose of this change is to provide an API that Blink 2D canvas layers can use
to install a new render target when recovering from a lost graphics context.

Review URL: https://codereview.chromium.org/15896005

git-svn-id: http://skia.googlecode.com/svn/trunk@9276 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
d4993ff3605102036f83d5834d9a022d780e5488 24-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GM: create GmResultDigest that encapsulates digest type ("bitmap-64bitMD5") and value (12345)

R=scroggo@google.com

Review URL: https://codereview.chromium.org/15883004

git-svn-id: http://skia.googlecode.com/svn/trunk@9271 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHasherTest.cpp
7839ce1af63bf12fe7b3caa866970bbbb3afb13d 23-May-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@9231

Change-Id: I384e5f43ceb90b1a2e58a1e33753b3e79c85b949
RGBImageEncoderTest.cpp
itmapHasherTest.cpp
itmapTransformerTest.cpp
hecksumTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
rrorTest.cpp
latDataTest.cpp
ontHostStreamTest.cpp
ontMgrTest.cpp
ontNamesTest.cpp
LProgramsTest.cpp
rContextFactoryTest.cpp
rMemoryPoolTest.cpp
rSurfaceTest.cpp
athTest.cpp
atrix44Test.cpp
DFPrimitivesTest.cpp
athOpsAngleTest.cpp
athOpsBoundsTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicIntersectionTestData.cpp
athOpsCubicIntersectionTestData.h
athOpsCubicLineIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsInverseTest.cpp
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadIntersectionTestData.cpp
athOpsQuadIntersectionTestData.h
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadParameterizationTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsSkpClipTest.cpp
athOpsTestCommon.cpp
athOpsTestCommon.h
athOpsThreadedCommon.cpp
athOpsThreadedCommon.h
athTest.cpp
ictureTest.cpp
ointTest.cpp
oundRectTest.cpp
urfaceTest.cpp
est.cpp
est.h
estClassDef.h
ileGridTest.cpp
fermodeTest.cpp
kia_test.cpp
2db3ded335fdb6697623bece61cabc307a414770 22-May-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrGLProgramDesc's key variable length by compacting the effect key array

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/15252004

git-svn-id: http://skia.googlecode.com/svn/trunk@9239 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
25b3bd58dfaf0d1704c48ed3a50e1482fd336e62 22-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add kBicubicFilterBitmap_Flag to paint, just for testing purposes.

BUG=

Review URL: https://codereview.chromium.org/15553005

git-svn-id: http://skia.googlecode.com/svn/trunk@9236 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
8f838259ab65e44562902679fa88cb00575b99ce 22-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add methods to SkLayerDrawLooper to allow adding layers on top
as well as on the bottom.

This is more convenient for some callers who generate layers
from a data structure in bottom-to-top, rather than top-to-bottom,
order.

BUG=242529
R=tomhudson@chromium.org

Author: jbroman@chromium.org

Review URL: https://chromiumcodereview.appspot.com/15314003

git-svn-id: http://skia.googlecode.com/svn/trunk@9233 2bbb7eff-a529-9590-31e7-b0007b416f81
ayerDrawLooperTest.cpp
1b1bcc3ceac9b4adbb4de68429903a5f721ffe62 21-May-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> New API for encoding bitmaps during serialization.

This change gives more flexibility to the implementation of
EncodeBitmap to prefer calling refEncodedData, doing its own
encode, or even doing both and making a decision about which
to use.

The new function signature also allows the implementation to
tell the ordered write buffer whether to store the pixel offset,
in the case where the encoded bitmap represents the larger
bitmap, or to ignore the pixel offset, in the case where the
implementation only encoded the subset that is used.

Requires changes to chromium to use the new function signature.
(https://codereview.chromium.org/15496006/)

SkPicture:
New API for EncodeBitmap.

SkOrderedReadBuffer:
Ifdef'd out addition of reading the offset.

SkOrderedWriteBuffer:
Never call refEncodedData. Allow the user to call that from their
EncodeBitmap function, if desired.
This addresses https://code.google.com/p/skia/issues/detail?id=1239
Add in ifdef'd out code to record the offset.

PictureTest and PictureRenderer:
Implement the new definition of EncodeBitmap. Also update the name
of the function to meet coding style guidelines.

BUG=https://code.google.com/p/skia/issues/detail?id=1239
R=reed@google.com

Review URL: https://codereview.chromium.org/15489004

git-svn-id: http://skia.googlecode.com/svn/trunk@9226 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
b1c725a108f57ac186542b43de80fa651a4dddba 21-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing deferred canvases so that they do not return deferred devices on createCompatibleDevice

TEST= DeferredCanvas unit test.

Review URL: https://codereview.chromium.org/15594004

git-svn-id: http://skia.googlecode.com/svn/trunk@9224 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
845220b8179a73c8ec3e53b6dcc11ee3d30ad6a4 20-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9189 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
20f7f173e05b60f541910d0c1da9850ac73e2958 17-May-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> One SkTSearch to rule them all. Allow key to be of different type than the array.

R=bungeman@google.com

Review URL: https://codereview.chromium.org/15070011

git-svn-id: http://skia.googlecode.com/svn/trunk@9182 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
83d1a68141830cbfa0d5fca6f9c9bccf9c978ad2 17-May-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add special handling of rectori case for gpu

https://codereview.chromium.org/15080010/



git-svn-id: http://skia.googlecode.com/svn/trunk@9175 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
b515881446c303a50d9b2dd38b9163b4e5c625a2 13-May-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Key shader on whether frag pos read is relative to top-left or bottom-left

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/14633007

git-svn-id: http://skia.googlecode.com/svn/trunk@9113 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4a8084ced3fa5c73a364f96cadfa1fbfbea24ff6 09-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r9081

Review URL: https://codereview.chromium.org/14773022

git-svn-id: http://skia.googlecode.com/svn/trunk@9082 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
3a8d3d06ea9ea2066950abe55246319b0d9b1625 09-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkString::append(const char c)

R=bsalomon@google.com

Review URL: https://codereview.chromium.org/14813013

git-svn-id: http://skia.googlecode.com/svn/trunk@9081 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
8d47ddc19a40d1984bf1f384d711d36ab59fd1c0 09-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrGLShaderBuilder check whether GrEffect advertised that it would require the dst color or fragment position

R=senorblanco@chromium.org, robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/14998007

git-svn-id: http://skia.googlecode.com/svn/trunk@9074 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
504976ef6f1b969c2ac13ff1140ea1067f085ffa 09-May-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move loops that chain together effects into GrGLShaderBuilder from GrGLProgram.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/14925010

git-svn-id: http://skia.googlecode.com/svn/trunk@9073 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
3eff3592acfa6c7b6d4e85c91f0a200eddb09db7 08-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> need to clamp all of the cubic points after a chop, in case our finite precision
meant we didn't compute values below the chop-point.

crbug:234190

R=caryclark@google.com

Review URL: https://codereview.chromium.org/14607012

git-svn-id: http://skia.googlecode.com/svn/trunk@9071 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
2a9a8bec45fa397df1d0ff17e5e5ed79ab9edc3d 08-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix BitmapHasher unittest failure as of r9064



git-svn-id: http://skia.googlecode.com/svn/trunk@9066 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHasherTest.cpp
0a117be3919becebcaa0338040af2c5ec03f6752 08-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Re-land r9059 with empty cityhash.gyp, instead of deleted cityhash.gyp

R=rmistry@google.com

Review URL: https://codereview.chromium.org/15060008/



git-svn-id: http://skia.googlecode.com/svn/trunk@9064 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
d575eed3549dcb943ae84cfeb0a31463d6edad34 08-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix behavior of SkPicture::kUsePathBoundsForClip_RecordingFlag to handle inverse fills and all clip ops correctly.
BUG=crbug.com/229011
TEST=Picture unit test + complexclip* GMs

Review URL: https://codereview.chromium.org/14820021

git-svn-id: http://skia.googlecode.com/svn/trunk@9063 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
e8d08a0fc294f2df7fc1ea074bcad52fc57c91b4 08-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Roll out r9059 to unbreak bots


git-svn-id: http://skia.googlecode.com/svn/trunk@9060 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
aaf7343e16c4bf9f9c6f07968689669fe6ba71d7 08-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove third-party cityhash, unused since r8992

R=djsollen@google.com

Review URL: https://codereview.chromium.org/15027013

git-svn-id: http://skia.googlecode.com/svn/trunk@9059 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
2b34fe01d7b5736b212eb4886afc723a7b9241ae 08-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9051 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicQuadIntersectionTest.cpp
athOpsLineIntersectionTest.cpp
athOpsSkpClipTest.cpp
a5e55925ea03e76885804bda77408a1d6f04c335 07-May-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops -- fix skp bugs

This fixes a series of bugs discovered by running
the small set of Skia skp files through pathops
to flatten the clips.
Review URL: https://codereview.chromium.org/14798004

git-svn-id: http://skia.googlecode.com/svn/trunk@9042 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicQuadIntersectionTest.cpp
athOpsExtendedTest.cpp
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsSimplifyTest.cpp
athOpsSkpClipTest.cpp
athOpsThreadedCommon.cpp
athOpsThreadedCommon.h
66f5aaad90b5027daad8acbd5e8d83160097ed95 07-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Check whether font creation is failed to avoid segment fault.
In some rare cases, SkFontHost::CreateTypeface in src/ports/SkFontHost_fontconfig.cpp will return NULL, this will lead to segment fault because the previous code would access to 0x0 by (SkTypeface *)NULL->unref().

BUG=
R=reed@google.com, bungeman@google.com

Author: yunchao.he@intel.com

Review URL: https://chromiumcodereview.appspot.com/14907005

git-svn-id: http://skia.googlecode.com/svn/trunk@9034 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostStreamTest.cpp
279627efc53e0a1004b296b1254e4c48082a725e 07-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> reverting 9031

git-svn-id: http://skia.googlecode.com/svn/trunk@9033 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
0962ae1fbc450dd4672739402bb57fc2bd4fcdc7 07-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkPicture path bound optimization to handle inverse filled paths.

BUG=crbug.com/229011
TEST=Picture unit test

Review URL: https://codereview.chromium.org/14819008

git-svn-id: http://skia.googlecode.com/svn/trunk@9031 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
fcc9ca09a56cd43015cc990898a55978bc2bf23d 06-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> by hook or by crook, force gcc to return the value of SkPoint::length() to actually be a float
instead of a double. Otherwise we can't properly test for overflow with large values.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/14884011

git-svn-id: http://skia.googlecode.com/svn/trunk@9015 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
ecc9d28072142ab503a237726748ec2dc4ff842f 04-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9002 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
dc9cdf8d49ecfe174c408845b7f2de6f5a756b1d 03-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add (temporary) diagnostic code for normalize test



git-svn-id: http://skia.googlecode.com/svn/trunk@8994 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
c9f81661c17b6315df45440541ac799c8034f849 03-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add endian tests (reviewed by bungeman)



git-svn-id: http://skia.googlecode.com/svn/trunk@8993 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
b4ca46d748364236e82fdaccc08022dd89e29d40 03-May-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkBitmapHasher: use 64-bit-truncated MD5 instead of 64-bit CityHash
BUG=https://code.google.com/p/skia/issues/detail?id=1257

(if we change our mind within the next few days, we can toggle the
BITMAPHASHER_USES_TRUNCATED_MD5 #ifdef ; at some point, we'll remove that
option so we can delete our CityHash implementation entirely)

R=bungeman@google.com

Review URL: https://codereview.chromium.org/14054012

git-svn-id: http://skia.googlecode.com/svn/trunk@8992 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHasherTest.cpp
25720b4d7e6f86043997c040315f2874aa2c8c9a 03-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> trick the compiler into not knowning that I will generate an overflow
(which is the point of the test). This avoids a warning, which breaks
our bots.



git-svn-id: http://skia.googlecode.com/svn/trunk@8991 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
5a5fe58595e881965c1a395885165eaccf2d44c5 03-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change setLength and Normalize to handle when mag2 overflows a float, but the
actual lenght does not.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/14838006

git-svn-id: http://skia.googlecode.com/svn/trunk@8988 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
89d1827fa04e63d87dff8e0cce12dfb25d1950be 02-May-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix error that ran no tests if no options were passed

git-svn-id: http://skia.googlecode.com/svn/trunk@8959 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
b631eec0e6c698b71423947d43199c33bc096a2f 02-May-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow unit tests to include or exclude test sets.

This modifies the command line to take test
matches of the form:

--match [or -m] [~][^]match[$] [~][^]match[$] ...

~ causes a matching test to always be skipped

^ requires the start of the test to match

$ requires the end of the test to match

^ and $ requires an exact match


If a test does not match any list entry,
it is skipped unless some list entry starts with ~
Review URL: https://codereview.chromium.org/14650009

git-svn-id: http://skia.googlecode.com/svn/trunk@8955 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
b516a4177931b8febf859752b49f094f70539eae 02-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Build fix for SurfaceTest on non-gpu platforms

Unreviewed

git-svn-id: http://skia.googlecode.com/svn/trunk@8946 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
da90474b5fcc019fb0971d12360bd05213ad4dc8 02-May-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding public API method on SkImage for extracting the GPU texture handle.

TEST=Surface unit test

Review URL: https://codereview.chromium.org/14646007

git-svn-id: http://skia.googlecode.com/svn/trunk@8945 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
7103344b64f3f0df88e76857c16edc8eedb58366 01-May-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add FontMgr to DirectWrite.
https://codereview.chromium.org/14314008/


git-svn-id: http://skia.googlecode.com/svn/trunk@8934 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
815211307368b82a8df503432221b80ab0a804c3 30-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8919 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
bc57a29a7a9757064389bcd31bbc36069208756a 29-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add wacky random shift so I can generate some zeros (without the optimizer knowing)
so I can test passing a 0 to SkCLZ()



git-svn-id: http://skia.googlecode.com/svn/trunk@8904 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
7729534da419436ea6127545e9f79b0b47ccffb4 29-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reland 8897 (was not a build-breaker) and fix MathTest (was a build-breaker)



git-svn-id: http://skia.googlecode.com/svn/trunk@8899 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
c21f86fc91ab3f78f6ecc6b8d52a297dd5317f69 29-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for SkCLZ



git-svn-id: http://skia.googlecode.com/svn/trunk@8896 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
e23b4a4f9e82329ba305e190ddd1f17c4746ca96 26-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops -- disable fail test for now

fail test fails on 32 bit platforms

git-svn-id: http://skia.googlecode.com/svn/trunk@8884 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsSimplifyFailTest.cpp
66560ca776773858abfffd59974eac32c942acc3 26-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops -- handle non-finite numbers

Op() and Simplify() do nothing if the input
is non-finite. Add code and tests.
Review URL: https://codereview.chromium.org/14407006

git-svn-id: http://skia.googlecode.com/svn/trunk@8882 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsSimplifyFailTest.cpp
athOpsSimplifyTest.cpp
2cf444f7040614b43af67e368f3aa636ebeaa45a 26-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8873 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
8dd94f0931b9f5839ce1b89f1489ba871517af39 25-Apr-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid side effects related to skia error callbacks in the testing infrastructure

BUG=

Review URL: https://codereview.chromium.org/14447018

git-svn-id: http://skia.googlecode.com/svn/trunk@8867 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
49ce11ba14b044d98c3a44e3b2c19903fcdabaa5 25-Apr-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkError for a bitmap that could not be decoded.

When recreating an SkPicture from an SkStream, use the
new error reporting system to report that an SkBitmap
could not be decoded.

Add a test that the parse error is thrown.

Review URL: https://codereview.chromium.org/13892009

git-svn-id: http://skia.googlecode.com/svn/trunk@8866 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
eb02957a5ff4e7b639263b2071e5e2522c7bc4fa 25-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable checking the style name from fontmgr (not impl on some backends,
and likely will be remvoed in future api)



git-svn-id: http://skia.googlecode.com/svn/trunk@8858 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
32c1b66a2c4f26935ba59f3afe3e81600fade78d 25-Apr-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added "SkRRect::contains(const SkRect&) const"

https://codereview.chromium.org/14200044/



git-svn-id: http://skia.googlecode.com/svn/trunk@8854 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
6dc7df69ae6b24c90d231e0d6a4516bf4f1aee2e 25-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops : fix empty-diff bug, op-in-place

add some debugging around reverse diff, inverse
Review URL: https://codereview.chromium.org/13851015

git-svn-id: http://skia.googlecode.com/svn/trunk@8852 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsOpTest.cpp
83f0d302e8eaa054d0b20303131f953181dd4f47 25-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8851 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
ileGridTest.cpp
d5cfdfffc8c63c6f1cceb46a9bcd5c555a7baa28 24-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing numerical rounding edge case in SkTileGrid

BUG=https://code.google.com/p/chromium/issues/detail?id=234688
TEST=TileGrid skia unit test

Review URL: https://codereview.chromium.org/13860011

git-svn-id: http://skia.googlecode.com/svn/trunk@8839 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
f1a358f42c8f9a36e55db9eb838017de9aa5dcfc 24-Apr-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix compile warning on mac that breaks a bot, and remove jpeg creation bitmap since we mock the compression.

git-svn-id: http://skia.googlecode.com/svn/trunk@8836 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
d9dfa18372119c8e1318125d2075fa80e0819094 24-Apr-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Encode images with DCTDecode (JPEG) in PDFs if it makes sense. Fallback to FlateDecode (zip) if it makes sense. Otherewise include uncompressed stream.
This change will reduce the size of PDFs to 50% (in the case of the existing SKPs, we reduce the total size of PDFs from 105MB to 50MB)
Review URL: https://codereview.appspot.com/7068055

git-svn-id: http://skia.googlecode.com/svn/trunk@8835 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
8c6a4f24d331503b3eb9a5c918d5876772b9a5ee 23-Apr-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> ARGB image encoder for checksums.
https://codereview.chromium.org/14267031/


git-svn-id: http://skia.googlecode.com/svn/trunk@8831 2bbb7eff-a529-9590-31e7-b0007b416f81
RGBImageEncoderTest.cpp
itmapTransformerTest.cpp
3b97af5add04489d57c7926ba6dc6f0013daf40f 23-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops -- use standard max, min, double-is-nan

fix a comment or two as well
Review URL: https://codereview.chromium.org/13934009

git-svn-id: http://skia.googlecode.com/svn/trunk@8822 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsDRectTest.cpp
c7e08bd6d06a421050ddd7060fbafa5b5e047752 23-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Also proxy bumpTestCount.

Example output with -v -x:

...
Finished 127 tests, 0 failures, 0 skipped.
Ran 73094673 Internal tests.

BUG=
R=caryclark@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/13983011

git-svn-id: http://skia.googlecode.com/svn/trunk@8821 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
ea774d2a5a049bf89474c0f047ed6a4e521de126 22-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix asserts in SkMulDiv255Round, and add test
Review URL: https://codereview.chromium.org/13934010

git-svn-id: http://skia.googlecode.com/svn/trunk@8813 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
e1c5429027f95cc0b99d1fb28e93deae31f11b78 22-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Unbreak -z. The LocalReporter shim layer was forcing the pathops options back to defaults.

BUG=
R=caryclark@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/13849013

git-svn-id: http://skia.googlecode.com/svn/trunk@8804 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
kia_test.cpp
0506b9d7d531fdfc9536895481d789a48626a86b 22-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make it clearer what's going on at the end of tests.
BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/14267022

git-svn-id: http://skia.googlecode.com/svn/trunk@8803 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
kia_test.cpp
44c661ff151356ba1c49d7942d23aa1507237989 22-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add thread-per-core setting to SkThreadPool.

BUG=
R=scroggo@google.com, caryclark@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/13855009

git-svn-id: http://skia.googlecode.com/svn/trunk@8802 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
kia_test.cpp
7dfbb0720a133c0f63ac7be504f335bbcc62a291 22-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops : add support for inverse fill

add inverse fill, reverse diff, and gm tests
cleaned up some interfaces
Review URL: https://codereview.chromium.org/14371011

git-svn-id: http://skia.googlecode.com/svn/trunk@8798 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsInverseTest.cpp
c4c9870953037be94da00ac9db887d171f6e479c 22-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding optimization to avoid image copy in SkSurface copy on write when content is discardable

This patch also adds code to SkDeferredCanvas to trigger the optimization.

TEST=DeferredSurfaceCopy bench, Surface unit test
R=reed@google.com

Author: junov@chromium.org

Review URL: https://chromiumcodereview.appspot.com/14063015

git-svn-id: http://skia.googlecode.com/svn/trunk@8797 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
c9f3b38f67893b22c3e02a6a934bc676e36c5cfc 22-Apr-2013 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping (SkipBuildbotRuns)

git-svn-id: http://skia.googlecode.com/svn/trunk@8795 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
1b0b71df3887d89d5f2bd02ab41546d27f7cfe21 21-Apr-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove printf



git-svn-id: http://skia.googlecode.com/svn/trunk@8792 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
9ca81a76a9669c70e6c4465c5d97686385e96dd8 21-Apr-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> pass 0 instead of NULL for size_t parameter



git-svn-id: http://skia.googlecode.com/svn/trunk@8791 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
cac3ae37522bf070244c723960d1689e53da4dcd 21-Apr-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> specialize SkDataTable for arrays where all elements are the same size.
optimize impl to not require another level of indirection (SkData) for storage.
add unittests for flattening.
optimize builder to not make a deepcopy of its chunkalloc heap.



git-svn-id: http://skia.googlecode.com/svn/trunk@8790 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
64b682ca42c75667e49251d3ab04f192f92d0dd8 20-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8785 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
8c5c7a905b708f7c0a991ca7c872af645544afef 19-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkDataTable, to efficiently store an immutable array. Includes a builder
helper class.
Review URL: https://codereview.chromium.org/14188049

git-svn-id: http://skia.googlecode.com/svn/trunk@8779 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
8da9bc751e1898d50dd84d7e5ca666b00e4ff624 19-Apr-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add all remaining separable xfer modes to GPU backend.
Review URL: https://codereview.chromium.org/14189024

git-svn-id: http://skia.googlecode.com/svn/trunk@8768 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
c1ccda3af8c462dc99d5893806baac3bd85fa5d3 19-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> return empty fontstyleset instead of null



git-svn-id: http://skia.googlecode.com/svn/trunk@8767 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
72993ab54276f8202d49b1e132e01c2a584d1dbe 19-Apr-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> silence && || parens clang warning.



git-svn-id: http://skia.googlecode.com/svn/trunk@8764 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
197845ae157da0175bb8dd05c4fd9eb9cd935e54 19-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add --threads to tests binary, to run non-GPU tests on multiple cores.

On my quad-core laptop I can get about a 3x speedup:
Debug, --threads 0 40.99s
Debug, --threads 8 14.39s
Release, --threads 0 8.24s
Release, --threads 8 2.80s

I also removed some unused Test.{h,cpp} APIs and refactored a little to make
things thread-safer.

BUG=
R=borenet@google.com, djsollen@google.com, scroggo@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/13855007

git-svn-id: http://skia.googlecode.com/svn/trunk@8763 2bbb7eff-a529-9590-31e7-b0007b416f81
rContextFactoryTest.cpp
est.cpp
est.h
kia_test.cpp
5920ac276877b36624e07baf97c7768e80a07f98 19-Apr-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Perform coverage blend with the dst in the shader when using a dst-reading xfermode.
Review URL: https://codereview.chromium.org/14233006

git-svn-id: http://skia.googlecode.com/svn/trunk@8762 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
87f99cb543dbba608136bbd2a7b1e6b3356fd6f9 19-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> ensure that negative zeros are still ignored when computing isIdentity()

crbug.com/162747



git-svn-id: http://skia.googlecode.com/svn/trunk@8761 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
9515f09b6ccbbbec9eb938ab2ef1249d291a9551 18-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops : remove countdown overkill
Review URL: https://codereview.chromium.org/13958005

git-svn-id: http://skia.googlecode.com/svn/trunk@8756 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsThreadedCommon.cpp
athOpsThreadedCommon.h
16cfe40276bfb0a4d98c9ad995b8e5b134a49b19 18-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow tests to optionally use multiple threads

modify threaded path ops tests to check

Background: this CL came out of a conversation with Eric where I learned that 10s of machines host 100s of bots. Since the bot hosting tests may be shared with many other tasks, it seems unwise for path ops to launch multiple test threads.

The change here is to make launching multiple threads "opt-in" and by default, bots can run path ops in a single thread.
Review URL: https://codereview.chromium.org/14002007

git-svn-id: http://skia.googlecode.com/svn/trunk@8750 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
est.h
kia_test.cpp
9d1cff124c14e550889a5755ffa5e6537af7c8c8 18-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkAutoTDelete instead of SkTScopedPtr
Review URL: https://codereview.chromium.org/13831011

git-svn-id: http://skia.googlecode.com/svn/trunk@8749 2bbb7eff-a529-9590-31e7-b0007b416f81
rMemoryPoolTest.cpp
0361032c0b53401030a720bc8b4930c3ec59f19e 18-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops work in progress

fix bugs in tests on 32 bit release

Most changes revolve around pinning computed t values
very close to zero and one.

git-svn-id: http://skia.googlecode.com/svn/trunk@8745 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsLineIntersectionTest.cpp
athOpsOpTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsThreadedCommon.h
b3f0921fba9457ba7ea79f220d8c1ec9345bfd3a 17-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> shape ops work in progress

Try to fix the 32 bit build by making some math
decisions more robust.

Rewrite the cubic intersection special case that
detects if only end points are shared.

Rewrite the angle sort setup that computes whether
a cubic bends to the left or right.

git-svn-id: http://skia.googlecode.com/svn/trunk@8726 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
45fb8b60137c65106b7903285672d0f8a8041f97 17-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8714 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
acea3ef448c9903de3aa6a013c839dce577e6ce3 16-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup: Removing unnecessary args/complexity in SkSurface_Base and friends
Review URL: https://codereview.chromium.org/14263017

git-svn-id: http://skia.googlecode.com/svn/trunk@8708 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
7841c63136e8aa2d3aadbeab8432405abcd73c32 16-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8693 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
06910786a1068faf9a1119f2163cc44c7c81fae0 16-Apr-2013 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use ILLEGAL_MODE macro to silence clang error.

This fixes the following clang error:

../../tests/XfermodeTest.cpp:43:44: error: comparison of constant -1 with expression of type 'SkXfermode::Mode' is always false [-Werror,-Wtautological-constant-out-of-range-compare]
REPORTER_ASSERT(reporter, reportedMode == -1);
~~~~~~~~~~~~ ^ ~~

R=vandebo@chromium.org,reed@google.com

Review URL: https://codereview.chromium.org/14180004

git-svn-id: http://skia.googlecode.com/svn/trunk@8692 2bbb7eff-a529-9590-31e7-b0007b416f81
fermodeTest.cpp
ad65a3e5fb1f94699f183551b828efbcc6a133ce 15-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> path ops work in progress

standardize tests
use SK_ARRAY_COUNT everywhere
debug why x87 differs from SIMD 64
various platform specific fixes

git-svn-id: http://skia.googlecode.com/svn/trunk@8689 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsAngleTest.cpp
athOpsBoundsTest.cpp
athOpsCubicIntersectionTest.cpp
athOpsCubicIntersectionTestData.cpp
athOpsCubicLineIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
athOpsExtendedTest.cpp
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadIntersectionTestData.cpp
athOpsQuadLineIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsQuadParameterizationTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
estClassDef.h
9becf0090f9c1c14f42d161b9a1fb3af142f9420 15-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix crash with SkDeferredCanvas+SkSurface integration with in order draw buffer.

The fImmediateDevice member of DeferredDevice (SkDeferredCanvas.cpp) was becoming invalid after a fork of the backingstore in SkSurface_Gpu cause the device to be substituted.

New unit test code was to exercise SkSurface copy on write with draws that are deferred in GrInOrderDrawBuffer. The bad pointer was causing the test to crash.

TEST=skia unit test DeferredCanvas, subtest TestDeferredCanvasSurface
Review URL: https://codereview.chromium.org/14263015

git-svn-id: http://skia.googlecode.com/svn/trunk@8686 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
4bb50b22fce5c4031549976cf7b04d63cc22e624 13-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8670 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
5ee449af7448c202cfc6e9a359d8f996392885b2 12-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing viral copy/paste typo Shapshot -> Snapshot

Unreviewed

git-svn-id: http://skia.googlecode.com/svn/trunk@8667 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
urfaceTest.cpp
3c5ec8df2cf15aba7eb96dfed405a74fa5c30681 12-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding 'static' to eleminate compile warning on mac

Unreviewed.

git-svn-id: http://skia.googlecode.com/svn/trunk@8649 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
67d74228448cab0f1eca77fff444ddbe8c2eaef3 12-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding SkSurface support to SkDeferredCanvas
Review URL: https://codereview.chromium.org/14178002

git-svn-id: http://skia.googlecode.com/svn/trunk@8648 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
7abfa49390bac6c07161435324ba5f2d3b270635 12-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> turn on pathops unit test

This temporarily disables SK_ENABLE_INST_COUNT
( skbug.com/1219 )

This fixes a linktime error on VS2012 in
PathTest.cpp; -SK_ScalarInfinity should be
SK_ScalarNegativeInfinity instead.

This adds pathops and pathops unit tests to the
main unit tests.

Should this change destabilize anything, it should
be sufficient to comment out the pathops gypi
includes. at test.gyp:18,21.
Review URL: https://codereview.chromium.org/14137010

git-svn-id: http://skia.googlecode.com/svn/trunk@8644 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
908f5836626d792c5e33ad93f44c6a418a0cc8f5 12-Apr-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename SkBitmapChecksummer as SkBitmapHasher, and prepare for it to possibly use
some algorithm other than CityHash
Review URL: https://codereview.chromium.org/14170010

git-svn-id: http://skia.googlecode.com/svn/trunk@8639 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHasherTest.cpp
hecksumTest.cpp
5a6324e3140eb16cd5255867eae02a2c88d54271 11-Apr-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Better fix for the patched build.

skia_test is also built on Android in pathops_unittest, which needed
to also depend on the flags project.

Remove the hack in skia_test of providing the full path.

Review URL: https://codereview.chromium.org/14177002

git-svn-id: http://skia.googlecode.com/svn/trunk@8632 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
66c9f9995ec581f578aa7de4f0defe7dd728fa7e 11-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> short names should be ... short, in commandlineflags



git-svn-id: http://skia.googlecode.com/svn/trunk@8629 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
83165a5f71319b04beb561afb7c968493027bcbd 11-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add fontmgr tests, and optional --verboseFontMgr flag (or -vfm) for more output



git-svn-id: http://skia.googlecode.com/svn/trunk@8626 2bbb7eff-a529-9590-31e7-b0007b416f81
ontMgrTest.cpp
9aff14831b45a7e31e46ebec482df9db6f125745 11-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> restore option to --match (instead of --matchStr)



git-svn-id: http://skia.googlecode.com/svn/trunk@8624 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
746cd0fc9a83766db28b937d40ecea2c0aea1483 11-Apr-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build. Unreviewed.

I don't understand why this change is necessary. On Android,
SkCommandLineFlags.h is not found, but only in this project.
Other projects depend on flags and include the file without
using the full path. Likewise, this works on other platforms.
Removing for now until I figure out the correct fix.

Review URL: https://codereview.chromium.org/13910008

git-svn-id: http://skia.googlecode.com/svn/trunk@8621 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
ba59d64b05b13081060a266c999158efab575b61 11-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> use commandlineflags for tests/

Author: reed@google.com

Reviewed By: scroggo@google.com

Review URL: https://chromiumcodereview.appspot.com/14047009

git-svn-id: http://skia.googlecode.com/svn/trunk@8616 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
db60de7cbe3ea9643a0471e1225a6abeac021de3 11-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> shape ops test fixes

- fix rand for Android
- build unit test on linux
- use atomic inc in test count
- add casting for Android

git-svn-id: http://skia.googlecode.com/svn/trunk@8610 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
est.h
391ca66276b27464f255c371e7e95f56f9042042 11-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8608 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsThreadedCommon.cpp
athTest.cpp
kia_test.cpp
e942bc329aadbdf6f7f67e35faab52536b964ed9 10-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix a few pathops test bugs exposed on Mac and Linux

git-svn-id: http://skia.googlecode.com/svn/trunk@8601 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsQuadReduceOrderTest.cpp
athOpsSimplifyTest.cpp
athOpsThreadedCommon.h
7a90daf25878a7459ba9fbda581bb97cda034f02 10-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix bug introduced with SK_IGNORE_CUBIC_STROKE_FIX where we no longer respected
subDivide limit. This caused problems with degenate paths (too much recursion).

The fix was two parts:
1. decrement the subDivide limit as we recurse
2. up the limit for cubics to 7, to match our current quality

added unittest that replicated the too-much-recursion bug.
Review URL: https://codereview.chromium.org/14086002

git-svn-id: http://skia.googlecode.com/svn/trunk@8599 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d54e1e9751eea63b528a6e62d919d06929c9bd8f 10-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add extended option to Test

The command line option
--extended runs extended tests
--verbose reports number of tests run (if recorded)

Added simple help as well.
Review URL: https://codereview.chromium.org/14063005

git-svn-id: http://skia.googlecode.com/svn/trunk@8595 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
kia_test.cpp
66089e4ec4f1702caf2154780471417872862148 10-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make parallel unit testing work on windows
Review URL: https://codereview.chromium.org/14072002

git-svn-id: http://skia.googlecode.com/svn/trunk@8594 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTestData.cpp
athOpsCubicIntersectionTestData.h
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsThreadedCommon.cpp
athOpsThreadedCommon.h
ef5b81142600510b89184fd6f69202ecb92be724 09-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing SkTileGrid to clamp rather than clip content and querries that are outside the bounds of the grid

This fix prevents border padding and offsets on the tile grid structure from resulting in bad clipping. The job of clipping contents is left to the playback canvas.

BUG=https://code.google.com/p/skia/issues/detail?id=1209
TEST=TileGrid unit test,
Review URL: https://codereview.chromium.org/13493016

git-svn-id: http://skia.googlecode.com/svn/trunk@8576 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
686bcb871b8425603b9accbf72e27a9309f786d8 09-Apr-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland of 8525 with fix for case when GrRT outlives GrTexture.
Review URL: https://codereview.chromium.org/13814015

git-svn-id: http://skia.googlecode.com/svn/trunk@8573 2bbb7eff-a529-9590-31e7-b0007b416f81
rSurfaceTest.cpp
3284017a60ea4fc3dc5b95838ba0c301ee1e4e8d 09-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8568 2bbb7eff-a529-9590-31e7-b0007b416f81
rrorTest.cpp
athOpsExtendedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsTestCommon.cpp
8e029e6e59024b80e8f71924369a540699754de3 08-Apr-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> silence android warning

git-svn-id: http://skia.googlecode.com/svn/trunk@8567 2bbb7eff-a529-9590-31e7-b0007b416f81
rrorTest.cpp
75e3ca127cd14fffc9c8df7ea03d6529fb001831 08-Apr-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Error checking / reporting API

Review URL: https://codereview.chromium.org/13699004

git-svn-id: http://skia.googlecode.com/svn/trunk@8566 2bbb7eff-a529-9590-31e7-b0007b416f81
rrorTest.cpp
496120185c7baed4edf1c110f4f5b43f29bab1c0 08-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> saving the old before blowing away

git-svn-id: http://skia.googlecode.com/svn/trunk@8565 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsQuadReduceOrderTest.cpp
dde23ce372d3ac1beb27c82ad5814cc744b843d8 03-Apr-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r8352 into Android

Change-Id: Id9945639617af9802b3d16a5f8485469125e8545
818b0cc1b8b0c4acc565e8e2cb8b0b61aa5a300e 08-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add implementation of path ops

This CL depends on
https://codereview.chromium.org/12880016/
"Add intersections for path ops"

Given a path, iterate through its contour, and
construct an array of segments containing its curves.

Intersect each curve with every other curve, and for
cubics, with itself.

Given the set of intersections, find one with the
smallest y and sort the curves eminating from the
intersection. Assign each curve a winding value.

Operate on the curves, keeping and discarding them
according to the current operation and the sum of
the winding values.

Assemble the kept curves into an output path.
Review URL: https://codereview.chromium.org/13094010

git-svn-id: http://skia.googlecode.com/svn/trunk@8553 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsExtendedTest.cpp
athOpsExtendedTest.h
athOpsOpCubicThreadedTest.cpp
athOpsOpRectThreadedTest.cpp
athOpsOpTest.cpp
athOpsQuadLineIntersectionThreadedTest.cpp
athOpsSimplifyDegenerateThreadedTest.cpp
athOpsSimplifyQuadThreadedTest.cpp
athOpsSimplifyQuadralateralsThreadedTest.cpp
athOpsSimplifyRectThreadedTest.cpp
athOpsSimplifyTest.cpp
athOpsSimplifyTrianglesThreadedTest.cpp
athOpsTestCommon.cpp
athOpsTestCommon.h
9166dcb3a0e8784bea83d76ae01aa338c049ae05 08-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add intersections for path ops

This CL depends on
https://codereview.chromium.org/12827020/
"Add base types for path ops"

The intersection of a line, quadratic, or cubic
with another curve (or with itself) is found by
solving the implicit equation for the curve pair.

The curves are first reduced to find the simplest
form that will describe the original, and to detect
degenerate or special-case data like horizontal and
vertical lines.

For cubic self-intersection, and for a pair of cubics,
the intersection is found by recursively
approximating the cubic with a series of quadratics.

The implicit solutions depend on the root finding
contained in the DCubic and DQuad structs, and
the quartic root finder included here.
Review URL: https://codereview.chromium.org/12880016

git-svn-id: http://skia.googlecode.com/svn/trunk@8552 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsCubicIntersectionTest.cpp
athOpsCubicIntersectionTestData.cpp
athOpsCubicIntersectionTestData.h
athOpsCubicLineIntersectionTest.cpp
athOpsCubicReduceOrderTest.cpp
athOpsCubicToQuadsTest.cpp
athOpsLineIntersectionTest.cpp
athOpsLineParametetersTest.cpp
athOpsQuadIntersectionTest.cpp
athOpsQuadIntersectionTestData.cpp
athOpsQuadIntersectionTestData.h
athOpsQuadLineIntersectionTest.cpp
athOpsQuadParameterizationTest.cpp
07393cab57ce74a4aae89a31fae9aaa9780fc19d 08-Apr-2013 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add base types for path ops

Paths contain lines, quads, and cubics, which are
collectively curves.

To work with path intersections, intermediary curves
are constructed. For now, those intermediates use
doubles to guarantee sufficient precision.

The DVector, DPoint, DLine, DQuad, and DCubic
structs encapsulate these intermediate curves.

The DRect and DTriangle structs are created to
describe intersectable areas of interest.

The Bounds struct inherits from SkRect to create
a SkScalar-based rectangle that intersects shared
edges.

This also includes common math equalities and
debugging that the remainder of path ops builds on,
as well as a temporary top-level interface in
include/pathops/SkPathOps.h.
Review URL: https://codereview.chromium.org/12827020

git-svn-id: http://skia.googlecode.com/svn/trunk@8551 2bbb7eff-a529-9590-31e7-b0007b416f81
athOpsBoundsTest.cpp
athOpsDCubicTest.cpp
athOpsDLineTest.cpp
athOpsDPointTest.cpp
athOpsDQuadTest.cpp
athOpsDRectTest.cpp
athOpsDTriangleTest.cpp
athOpsDVectorTest.cpp
e06f8ef5ba369f6bb1ed83ebe230db68198abf7c 03-Apr-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert 8525,8526 pending investigation of bench_pictures crashes.



git-svn-id: http://skia.googlecode.com/svn/trunk@8527 2bbb7eff-a529-9590-31e7-b0007b416f81
rSurfaceTest.cpp
d02e8803e910b762e47a955162292c8b5eee15dc 03-Apr-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove GrTexture::releaseRenderTarget() and add GrSurface::isSameAs().
Review URL: https://codereview.chromium.org/13414006

git-svn-id: http://skia.googlecode.com/svn/trunk@8525 2bbb7eff-a529-9590-31e7-b0007b416f81
rSurfaceTest.cpp
8bc9edce9edad2d2699c809892e9d90055d9f172 03-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Build fix for Surface Test on non-gpu builds

git-svn-id: http://skia.googlecode.com/svn/trunk@8513 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
af0583528c7dd5344abfe14347377011abe374e2 03-Apr-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed bug with SkImage leaving canvas backing store in an immutable state after destroy.
Added unit test that verifies that surface backing is writable after creating and destroying an image.
Review URL: https://codereview.chromium.org/13226002

git-svn-id: http://skia.googlecode.com/svn/trunk@8512 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
e2022cc36e47b9f0d219eb5cd24be61772c28d3b 03-Apr-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@8352

Change-Id: I09dbe7f21185e6c22f04edbaf46de2f5c620e475
itmapFactoryTest.cpp
ontHostTest.cpp
LProgramsTest.cpp
atrix44Test.cpp
DFPrimitivesTest.cpp
6addb1930013ebb2f984045141650fd7afcfa90f 02-Apr-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> resubmit https://code.google.com/p/skia/source/detail?r=7883 (in the meantime we
added capability to collect minidump and callstack if buildbot fails with heap
coruption in windows, and a NPE bug was fixed in SkPDFDocument, when document was destroyed without ever beeing used and a field was NULL + a few minor conflicts have been resolved)

git-svn-id: http://skia.googlecode.com/svn/trunk@8487 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
07a69f848cd6e28e0870ac9eeeba2d05f8e8d8be 02-Apr-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Name table iterator.
https://codereview.appspot.com/8180043/


git-svn-id: http://skia.googlecode.com/svn/trunk@8480 2bbb7eff-a529-9590-31e7-b0007b416f81
ontNamesTest.cpp
05a2ee052c9ef4c781b7b590b00b3d2da3b3449a 02-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8477 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
054ae99d93711c26e40682a0e3a03a47ea605c53 01-Apr-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Take two for r8466:

Replace the old attribute binding and index interface with one where we include the binding as part of the attribute array. Also removed the fixed attribute indices for constant color and coverage attributes, and replaced with dynamic ones based on current attribute set. Removed binding of color and coverage attributes unless they're actually set.

Original author: bsalomon@google.com

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com,robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13296005


git-svn-id: http://skia.googlecode.com/svn/trunk@8468 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
c7bf2963f00a29bd28e5e2a446da79f93c1d9383 01-Apr-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rolling back r8466.

Not reviewed.


git-svn-id: http://skia.googlecode.com/svn/trunk@8467 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
fb495b537f5ddd6966f02cfe38f6b106a4869934 01-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revise attribute binding interface.

Replace the old attribute binding and index interface with one where we include the binding as part of the attribute array. Also removed the fixed attribute indices for constant color and coverage attributes, and replaced with dynamic ones based on current attribute set. Removed binding of color and coverage attributes unless they're actually set.

Original author: bsalomon@google.com

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com,robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13296005

git-svn-id: http://skia.googlecode.com/svn/trunk@8466 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
b79d865f03456b67273b568fa5046b8ba01e365a 29-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix GLPrograms test.
Review URL: https://codereview.chromium.org/13327008

git-svn-id: http://skia.googlecode.com/svn/trunk@8450 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
995beb6b00afc0e28f5effc8a22a7a3dcb2544e8 28-Mar-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding unit test for verifying copy on write in SkSurface + bug fix in SkCanvas::clear
Review URL: https://codereview.chromium.org/13116018

git-svn-id: http://skia.googlecode.com/svn/trunk@8429 2bbb7eff-a529-9590-31e7-b0007b416f81
urfaceTest.cpp
estClassDef.h
31ec7985f2b52a0cab4aa714a613b918cf663c08 27-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move GrGLProgram::Desc out of GrGLProgram.
Review URL: https://codereview.chromium.org/12942014

git-svn-id: http://skia.googlecode.com/svn/trunk@8411 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
37cbc7fd014e3b35833523dbdbe3bc3ac52ecacd 27-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8404 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
26ec00ea1b9f22d94e0ec9e4fa7a4ebda4c24be7 26-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix unit test build break



git-svn-id: http://skia.googlecode.com/svn/trunk@8394 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4647f9059825c062169d4d454c12640d82ae16c0 26-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace edge types with GrEdgeEffect.

This strips out last of the edge types and the fixed function edge attribute and replaces them with using GrEdgeEffect. Also fixes a minor bug when checking attribute counts -- it was using kAttribIndexCount instead of kVertexAttribCnt.

Original Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/13069003

git-svn-id: http://skia.googlecode.com/svn/trunk@8392 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
c26d94fd7dc0b00cd6d0e42d28285f4a38aff021 25-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move nested class GrDrawTarget::Caps out as GrDrawTargetCaps.
Pass caps to GrEffect::TestCreate() functions so that they can return effects that will work with the capabilities.
Review URL: https://codereview.chromium.org/12965018

git-svn-id: http://skia.googlecode.com/svn/trunk@8369 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
bcce8926524827775539874346dd424a9510dbc9 25-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrDrawTarget::Caps ref counted and GrGLCaps derive from it.

Also rename GrDrawTarget::getCaps() -> GrDrawTarget::caps().
Review URL: https://codereview.chromium.org/12843026

git-svn-id: http://skia.googlecode.com/svn/trunk@8364 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
096defe64d408e54474fe19f418c95bf1a554fc7 22-Mar-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@8255

Change-Id: I4666e04b05c7d2f2f0f25204b20b302e7d161d85
AClipTest.cpp
nnotationTest.cpp
itmapFactoryTest.cpp
litRowTest.cpp
lurTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
mptyPathTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
puBitmapCopyTest.cpp
rMemoryPoolTest.cpp
radientTest.cpp
ashCacheTest.cpp
nfRectTest.cpp
ListTest.cpp
athTest.cpp
atrixTest.cpp
emsetTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
ictureTest.cpp
ointTest.cpp
remulAlphaRoundTripTest.cpp
TreeTest.cpp
andomTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
egionTest.cpp
haderImageFilterTest.cpp
k64Test.cpp
ortTest.cpp
treamTest.cpp
LSTest.cpp
SetTest.cpp
est.cpp
est.h
estClassDef.h
ileGridTest.cpp
tilsTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
kia_test.cpp
ae3f2ce18d788f3a1640d1a34076c03835d06a59 21-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> "Fix" persistent failure of BitmapFactoryTest on debug RazrI

https://codereview.chromium.org/13002002/



git-svn-id: http://skia.googlecode.com/svn/trunk@8311 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapFactoryTest.cpp
9ae78506bd316683f94ded335be553d5399f742d 21-Mar-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Stop the GLPrograms unit test from generating out of range attrib indices for effects.

R=jvanverth@google.com

Author: bsalomon@google.com

Reviewed By: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/12834013

git-svn-id: http://skia.googlecode.com/svn/trunk@8298 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
35300c47fc6e59d8415a06042f230ed36deb60b3 21-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix minor valgrind-found memory leaks

https://codereview.chromium.org/12440066/



git-svn-id: http://skia.googlecode.com/svn/trunk@8297 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
DFPrimitivesTest.cpp
a262eea230a69cce309191bfdc8a19fe8737a152 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> beef-up upem test for fonts



git-svn-id: http://skia.googlecode.com/svn/trunk@8293 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
c78188896e28a4ae49e406a7422b345ae177dafe 20-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Attempt to reland 8264-5 with warning-as-error fixes.




git-svn-id: http://skia.googlecode.com/svn/trunk@8272 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
67e7cde5c5e59a8f1de7ee28276b8193ecb2bc7f 20-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 8265-8264 (broke build)



git-svn-id: http://skia.googlecode.com/svn/trunk@8268 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
ae81d5c4aa1716756b2cfb4c44f27f4dce2716ef 20-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Adds local coords to GrEffect system.

Effects can ask the builder for local coords which may or may not be distinct from positions.

GrEffectStage tracks changes to relationship between pos and local coords.

GrGLEffectMatrix and GrSingleTextureEffect can use either pos or textures as intput coords

GrSimpleTextureEffect now allows for an explicit texture coords attribute.
Review URL: https://codereview.chromium.org/12531015

git-svn-id: http://skia.googlecode.com/svn/trunk@8264 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
acef3c408216f7ef41bad1532f7946dc067f2bae 20-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r8233 (Use SkSet in PDF)



git-svn-id: http://skia.googlecode.com/svn/trunk@8255 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
cb62650ecfd323a1ac215103a4d3106faad3c3cd 20-Mar-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add --resourcePath flag to the test program.

Review URL: https://codereview.chromium.org/12521016

git-svn-id: http://skia.googlecode.com/svn/trunk@8252 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
est.h
kia_test.cpp
3fbab82bd30158ccabc708a20419025923e08655 20-Mar-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing deferred canvas bug caused by SkTwoPointConicalGradient declaring itself as opaque.

BUG=https://code.google.com/p/chromium/issues/detail?id=222140
TEST=DeferredCanvas unit test + DRT with --enable-deferred-2d-canvas

Author: junov@chromium.org

Reviewed By: bsalomon@chromium.org

Review URL: https://chromiumcodereview.appspot.com/12879005

git-svn-id: http://skia.googlecode.com/svn/trunk@8247 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
65eb4d5a210884cc92c43a8582cbd1ccbddcab57 19-Mar-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add stroked ovals and CircleEdgeEffect.

Adds some optimizations to the circle and ellipse shaders, static effect
instances for their GrEffects, and some minor changes to GrDrawState::setEffect
to make GrEffect setup faster.


git-svn-id: http://skia.googlecode.com/svn/trunk@8238 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
66bedbb02dbd252f46c1fad862d0561a0bb3f94b 19-Mar-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> resubmit https://code.google.com/p/skia/source/detail?r=7883 (in the meantime we added capability to collect minidump and callstack if buildbot fails with heap coruption in windows. a few minor conflicts have been resolved)
Review URL: https://codereview.chromium.org/12840004

git-svn-id: http://skia.googlecode.com/svn/trunk@8233 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
bb281f7f963ea9ae6d735ca8430396cfabaa73ca 18-Mar-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improvements/additions to SkImageCache/SkLazyPixelRef.

SkPurgeableImageCache:
New image cache that uses virtual memory to store the pixels. Combines
features of SkAshmemImageCache (which has been removed) with SkPurgeableMemoryBlock, which has android and Mac versions.

SkImageCache:
Modified the API. pinCache now returns a status out parameter which
states whether the pinned memory retained the old data. This allows
allocAndPinCache to only be used for allocations.
Add a new debug only interface to purge unpinned data.
Updates to documentation, clarifying behavior.
Changed CachedStatus to MemoryStatus

SkLruImageCache:
Implement the new function purgeAllUnpinnedCaches and change implementation
of pinCache for the new behavior.

SkLazyPixelRef:
Rewrite onLockPixels to account for the new behavior of pinCache.

BitmapFactoryTest:
Test the new SkPurgeableImageCache.
Write tests which directly test the SkImageCaches.
Create a larger bitmap, since some of the SkImageCaches are designed
to handle large bitmaps.

bench_ and render_pictures:
Consolidate lazy_decode_bitmap into one function.
Allow using a flag to specify using the purgeable image cache.
Clean up some #includes.

Review URL: https://codereview.chromium.org/12433020

git-svn-id: http://skia.googlecode.com/svn/trunk@8207 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapFactoryTest.cpp
fed86bdb8b9f037439bbfa7cdbd53a581dbc5985 14-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move most of SkFontHost to private (preceeding making it all private)

In this change, have to accomodate PDF wanting to call openStream and advancedMetrics
Review URL: https://codereview.chromium.org/12739006

git-svn-id: http://skia.googlecode.com/svn/trunk@8156 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostStreamTest.cpp
8c020612bad088d1a26dd663f0a806deeef8029b 12-Mar-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update flag to reflect actual meaning.
Review URL: https://codereview.chromium.org/12754004

git-svn-id: http://skia.googlecode.com/svn/trunk@8118 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
ff6ea2663f76aa85ec55ddd0f00ca7906f1bc4e3 12-Mar-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GrEllipseEdgeEffect.

Adds the effect that replaces the old oval rendering code. Also hooks in code to set attribute names and indices for effects.

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/12462008

git-svn-id: http://skia.googlecode.com/svn/trunk@8092 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
2e71f1619d9a2c51c1292e618f42a56ad2da1de8 12-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8090 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
7fa1bb41333a0873d636eea8ec14e5aed0e256a7 11-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Simplify the GL interface validation test.
Review URL: https://codereview.chromium.org/12703003

git-svn-id: http://skia.googlecode.com/svn/trunk@8077 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
ed268bfed3205347a90557c5029f37e90cc01956 11-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add (mac) test for ttcindex in SkFontStream



git-svn-id: http://skia.googlecode.com/svn/trunk@8073 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
e0e385c1d4171e065348ba17c546b3463a0bd651 11-Mar-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Removed unused parameters

I removed unused parameters wherever it was trivial to do so.
Review URL: https://codereview.chromium.org/12469002

git-svn-id: http://skia.googlecode.com/svn/trunk@8068 2bbb7eff-a529-9590-31e7-b0007b416f81
radientTest.cpp
a1d27cd07af36436a3c9c4495055fea5bbd219af 08-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't sort extensions when there are none. Make an ANGLE context to validate the ANGLE GrGLInterface with.

R=robertphillips@google.com

git-svn-id: http://skia.googlecode.com/svn/trunk@8049 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
4bd2bdbf04f21237337616aa931e34d7c8991edc 08-Mar-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream changes from Android.

Review URL: https://codereview.chromium.org/12699002

git-svn-id: http://skia.googlecode.com/svn/trunk@8045 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
c7d0ea3cd328566958bfcb86b4488dcbb94dd5ec 08-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add asScalars() to document when we want to treat SkPoint or SkRect as an array
of SkScalars.
Review URL: https://codereview.chromium.org/12530010

git-svn-id: http://skia.googlecode.com/svn/trunk@8041 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
b58772f86659cfe0e8d9247fcee878dddd8fdad9 08-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: add support for named destinations.

Landing patchset 7 from https://codereview.appspot.com/7374052 for dml@google.com
Review URL: https://codereview.chromium.org/12533009

git-svn-id: http://skia.googlecode.com/svn/trunk@8034 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
812b6f59fafc213260a56a4a4264ebf23646f662 06-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r8000 due to failures on some buildbots

git-svn-id: http://skia.googlecode.com/svn/trunk@8001 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
1cad898916c9e4a21429b5325c834a51fa6f361e 06-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: add support for named destinations

Imported from https://codereview.appspot.com/7374052/ on behalf of dml@google.com
Review URL: https://codereview.chromium.org/12466008

git-svn-id: http://skia.googlecode.com/svn/trunk@8000 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
075b089b1b8c4063a5724b86f104e052a49289b2 05-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7976 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
37ebe3fbf6c4a5728bc2c322cc0f626444f987bf 04-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Address some valgrind issues

https://codereview.appspot.com/7448051/



git-svn-id: http://skia.googlecode.com/svn/trunk@7966 2bbb7eff-a529-9590-31e7-b0007b416f81
radientTest.cpp
46348e21732e64e1a4dcfb5d859e6edafba471ff 04-Mar-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Initialize bounds even if the text length is zero.

Review URL: https://codereview.chromium.org/12387092

git-svn-id: http://skia.googlecode.com/svn/trunk@7964 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
b755a2ace7be5bd007bc3a374d0d2bd68af92788 04-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Mac 10.8 64-bit Release ClipCacheTest issue

unreviewed



git-svn-id: http://skia.googlecode.com/svn/trunk@7957 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
c490f801b063a0837501feab3d12b73d71f46312 04-Mar-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change random number generator for 'tests' to SkMWCRandom. Also removes some
unused headers and fixes a couple of bugs exposed by changing the random
number generator:

First, the function SkMatrix::getMaxStretch() had an error where it was testing
the square of a number against near-zero. This led to it occasionally taking a
cheaper but imprecise path for computing the eigenvalues of the matrix. It's
been replaced with a check against the square of SK_ScalarNearlyZero.

The second case was a failure in ClipStackTest, where it hit the rare case of
a practically empty clip stack (it has a single Union) and we set a tight
bounds. The bounds rect doesn't get set by GrReducedClip::ReduceClipStack() in
this case, so when it clips the reduced stack it's clipping against garbage,
and the resulting regions don't match. The solution is to initialize the
tightBounds rect.


git-svn-id: http://skia.googlecode.com/svn/trunk@7952 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
lurTest.cpp
lampRangeTest.cpp
lipStackTest.cpp
olorFilterTest.cpp
olorTest.cpp
rawBitmapRectTest.cpp
rMemoryPoolTest.cpp
nfRectTest.cpp
ListTest.cpp
athTest.cpp
atrixTest.cpp
ackBitsTest.cpp
athTest.cpp
ictureTest.cpp
TreeTest.cpp
egionTest.cpp
k64Test.cpp
ortTest.cpp
treamTest.cpp
tilsTest.cpp
riter32Test.cpp
9b855c7c95ce9fff7a447e4a6bdf8a469c1f3097 01-Mar-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Resubmit r7899 and r7901.


git-svn-id: http://skia.googlecode.com/svn/trunk@7929 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
631cdcb4a6b926b6447f328b81911a4499fb3698 01-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7910 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
af3a3b9fb1f3be46082013a2d1977d12faf1f61c 01-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r7901 & r7899 to allow DEPS roll



git-svn-id: http://skia.googlecode.com/svn/trunk@7909 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
6177e6999d23a4268ffd98dedfb1da00e272a89b 28-Feb-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split GrGLContextInfo into GrGLContext & GrGLContextInfo

https://codereview.appspot.com/7436045/



git-svn-id: http://skia.googlecode.com/svn/trunk@7905 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
b8b705b1b983a2ee3a254bed4dd03f926101e4e7 28-Feb-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add new vertex attribute array specification.

This changes the old method of setting vertex layout to a new one where we
specify vertex attribute data separately from attribute bindings (i.e. program
functionality). Attribute data is now set up via an array of generic attribute
types and offsets, and this is mapped to the old program functionality by
setting specific attribute indices. This allows us to create more general
inputs to shaders.


git-svn-id: http://skia.googlecode.com/svn/trunk@7899 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
5bd26d32ab85d09dccabbdc6dd944ef36ac32423 28-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert r7892

git-svn-id: http://skia.googlecode.com/svn/trunk@7896 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
194b7cdb5024719aeb7e2878f69b8f4b144aa9c4 27-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> resubmit after fixing assert issue: https://codereview.appspot.com/6744050

git-svn-id: http://skia.googlecode.com/svn/trunk@7892 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
54f0d1b7113cb0dc184e522539aab1030a28a421 27-Feb-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Tests : Unused parameters cleanup

I removed unused parameters in the tests wherever it was trivial to do so. I'm trying to get the easy ones out of the way before we get into more involved discussions around this.
Review URL: https://codereview.appspot.com/7394055

git-svn-id: http://skia.googlecode.com/svn/trunk@7891 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
litRowTest.cpp
anvasTest.cpp
lipperTest.cpp
olorTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
mptyPathTest.cpp
emsetTest.cpp
DFPrimitivesTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
ictureTest.cpp
eadPixelsTest.cpp
LSTest.cpp
ileGridTest.cpp
ritePixelsTest.cpp
kia_test.cpp
29b19e53cfac5af4f9bd5d361436d1097f349a34 27-Feb-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkTileGride geometry calculations to match the Chromium compositor.

This patch changes the semantics of tileWidth/Height to include the border region, and
uses an offset to take into account the fact that there is no outer border for outer
tiles. This patch also fixes a previous bug where the right column and bottom row were
considered to be included in bounds that are expressed as an SkIRect.

Companion Chromium CL required for roll: https://codereview.chromium.org/12221077/

TEST=TileGrid unit test
Review URL: https://codereview.appspot.com/7350050

git-svn-id: http://skia.googlecode.com/svn/trunk@7885 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
d1c53aae59ee44377be8bc0cc15e54d46aa530ce 27-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r7883

git-svn-id: http://skia.googlecode.com/svn/trunk@7884 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
676aef05ab1b8e913032648470ff483185e92b51 27-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkSet to fix issue when pdf generates an exp number of resources.

The problem fixed - http://code.google.com/p/skia/issues/detail?id=940 - is that getResources will recursively obtain all child resource recursively without checking for duplicates.

If we have lots of duplicates, then we try to build a very large vector (exponential with the number of nodes usually) and sooner or later we end up using too much memory and crash.

A possible solution could have been to make sure resources do not have duplicates, but that requirement is impractical, and it this leaves the solution fragile, if there is any issue in the tree, we crash.

When we emit the pdf, the large number of duplicates is not an issue, because SkPDFCatalog::addObject will deal with duplicates.

I have run the gm with --config pdf, and the images are 100% same bits, while the pdfs have the same size but some very small changes, the order of some objects.
Review URL: https://codereview.appspot.com/6744050

git-svn-id: http://skia.googlecode.com/svn/trunk@7883 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
5ca3bd0cbb34cb4e61c0ea3591a4967ee1d6140a 26-Feb-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7857 2bbb7eff-a529-9590-31e7-b0007b416f81
SetTest.cpp
789c6f291ecfff925086015360da525d6de1c835 25-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add --tmpDir foo option to tests, to allow unittests that want to write/read files
use tmpDir in SkStream tests



git-svn-id: http://skia.googlecode.com/svn/trunk@7851 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
est.h
kia_test.cpp
04115a102c8c46b9a6fdcaaa9626f8f92cead49b 25-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an SkSet class to be used by Pdf only, for now - reverted because of triggering heap corruption on Win7, original coe review: https://codereview.appspot.com/6749054

git-svn-id: http://skia.googlecode.com/svn/trunk@7849 2bbb7eff-a529-9590-31e7-b0007b416f81
SetTest.cpp
9447103029273a9f8dd7f5997e8af7a1e3ee7488 25-Feb-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Always round text position correctly.
https://codereview.appspot.com/7383049/

Will require rebaseline of fontscaler GM.

Must add SK_IGNORE_SUBPIXEL_AXIS_ALIGN_FIX to Chromium
until ~150 layout tests can be rebaselined.



git-svn-id: http://skia.googlecode.com/svn/trunk@7842 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
f8d7d2731318cdf510ab68e6b3f5ec68ab22c8e2 22-Feb-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create SkLazyPixelRef which performs lazy decoding.

The new pixel ref behaves similarly to SkImageRef, with some key differences:
It does not depend on the images project.
It requires an SkImageCache, which handles allocation and caching of the pixel
memory.
It takes a function signature for decoding which decodes into already allocated
pixel memory rather than into an SkBitmap.

Add two implementations of SkImageCache: SkLruImageCache and SkAshmemImageCache.

Replace SkSerializationHelpers::DecodeBitmap with SkPicture::InstallPixelRefProc,
and update sites that referenced it.

SkBitmapFactory now sets the pixel ref to a new object of the new
class SkLazyPixelRef, provided it has an SkImageCache for caching.

Provide an option to do lazy decodes in render_pictures and bench_pictures.

SkPicture:
Eliminate the default parameters in the constructor.
If a proc for decoding bitmaps is installed, use it to decode any encoded
data in subpictures.
When parsing deserializing subpictures, check for success.
When serializing subpictures, pass the picture's bitmap encoder to the
subpicture's call to serialize.

Update BitmapFactoryTest to test its new behavior.

BUG=https://code.google.com/p/skia/issues/detail?id=1008
BUG=https://code.google.com/p/skia/issues/detail?id=1009

Review URL: https://codereview.appspot.com/7060052

git-svn-id: http://skia.googlecode.com/svn/trunk@7835 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapFactoryTest.cpp
dff53c26e7ef80da4767433ecfe17741a059e247 22-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete build flag SK_IGNORE_CONVEX_QUAD_OPT
Review URL: https://codereview.appspot.com/7363046

git-svn-id: http://skia.googlecode.com/svn/trunk@7820 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
3c8fb5171858a81b7f2f66b357891f41755c4033 21-Feb-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix warnings-as-errors on Mac10.6 and Win. Unreviewed.

git-svn-id: http://skia.googlecode.com/svn/trunk@7811 2bbb7eff-a529-9590-31e7-b0007b416f81
haderImageFilterTest.cpp
a1c511b8704c6c266b90860a4c68f30ca7514f9b 21-Feb-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> New SkRectShaderImageFilter image filter

This new changelist also introduces a new image filter called SkRectShaderImageFilter which is make to simply apply a shader on a region without using any inputs.

TEST=Added ShaderImageFilter test
Review URL: https://codereview.appspot.com/7300046

git-svn-id: http://skia.googlecode.com/svn/trunk@7808 2bbb7eff-a529-9590-31e7-b0007b416f81
haderImageFilterTest.cpp
3976825a21532e254311b90b4a9046e25717e335 14-Feb-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unused texture coordinate flags.

Currently we support 5 texture stages, each with 5 possible texture coordinate attributes.
However, we only ever use one explicit texture coordinate. This change removes all but one
(now named just "aTexCoord") of the possible explicit texture coordinates.

Review URL: https://codereview.appspot.com/7308094/


git-svn-id: http://skia.googlecode.com/svn/trunk@7737 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
024e523a5ff78ec4d86d0b373bfb9adf8978ef4d 14-Feb-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for Gorilla test

My implementation of the Gorilla random number test had a bug in the code used
to track the random strings -- it was masking 6 bits instead of 5, which was
throwing off the counts. No idea how this worked on every platform except
Android.


git-svn-id: http://skia.googlecode.com/svn/trunk@7731 2bbb7eff-a529-9590-31e7-b0007b416f81
andomTest.cpp
73a9694b4ceb67547e5863db5315488e7d5294f7 13-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkMWRandom in GLPrograms test.

R=jvanverth@google.com
Review URL: https://codereview.appspot.com/7306097

git-svn-id: http://skia.googlecode.com/svn/trunk@7721 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
91207482c9398944fc997aeb99ed5f8674be58cb 12-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move code that builds GrGLProgram::Desc to GrGLProgram. Move color and coverage flush to GrGLProgram.
Review URL: https://codereview.appspot.com/7322058

git-svn-id: http://skia.googlecode.com/svn/trunk@7708 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
8626719107424b41b5ff899bf2288a0108c4bba2 09-Feb-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7688 2bbb7eff-a529-9590-31e7-b0007b416f81
andomTest.cpp
ileGridTest.cpp
f507c410e3a2a7ef7dab84152d836da5e5a8a5e9 08-Feb-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding option to SkTileGrid for specifying border pixels.

The purpose of this patch is to make it possible for the chromium compositor to
generate a TileGrid structure that is better suited for scaled playback.
Review URL: https://codereview.appspot.com/7300072

git-svn-id: http://skia.googlecode.com/svn/trunk@7680 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
7cacbbd98ab8b7fa2cbe6a5a0f7c3a1bf06fe43b 08-Feb-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix build on Macos

BUG=

Review URL: https://codereview.appspot.com/7320043

git-svn-id: http://skia.googlecode.com/svn/trunk@7672 2bbb7eff-a529-9590-31e7-b0007b416f81
andomTest.cpp
897f462da528abdfce9038bfc1973c2771369cf8 08-Feb-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for Mac compile warnings. Temporarily removed random gorilla test.

Unreviewed


git-svn-id: http://skia.googlecode.com/svn/trunk@7671 2bbb7eff-a529-9590-31e7-b0007b416f81
andomTest.cpp
5a90adaf2fc3c161be32ae61ca063e82f1b8fa46 08-Feb-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add Random unit tests.

https://codereview.appspot.com/7306066/


git-svn-id: http://skia.googlecode.com/svn/trunk@7670 2bbb7eff-a529-9590-31e7-b0007b416f81
andomTest.cpp
85983288ba8f4abc1fba4c54da827d2b089472e0 07-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove compile time option to use different types for text vertices.
Review URL: https://codereview.appspot.com/7309060

git-svn-id: http://skia.googlecode.com/svn/trunk@7658 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
5990397d08640a80a7ccb3955b9952b356be3f86 07-Feb-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Address google3 compiler warning

https://codereview.appspot.com/7308063/



git-svn-id: http://skia.googlecode.com/svn/trunk@7655 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
efbe8e9bedda21a3e061ebf3d96431a0f250a654 07-Feb-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix errors when compiling with -Wall -Werror on Android.

This CL also turns those features on by default on Android

Review URL: https://codereview.appspot.com/7313049

git-svn-id: http://skia.googlecode.com/svn/trunk@7645 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
eadWriteAlphaTest.cpp
fec0bc3fc13481f5bcb341ab2d2d695911f39bd4 07-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove legacy names no longer referenced in Chrome and WebKit.
Review URL: https://codereview.appspot.com/7311055

git-svn-id: http://skia.googlecode.com/svn/trunk@7640 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
LProgramsTest.cpp
eadPixelsTest.cpp
ritePixelsTest.cpp
a519f4878343a2f37b7e1be878d6eabb73dbb755 06-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rver r7626, might trigger for some strange reason a heap corruption

git-svn-id: http://skia.googlecode.com/svn/trunk@7631 2bbb7eff-a529-9590-31e7-b0007b416f81
SetTest.cpp
848b9af52dd545afb1fa37df910bcc87bf657843 06-Feb-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a true Set class. Current use case is to be used with Pdf generator.
Review URL: https://codereview.appspot.com/6749054

git-svn-id: http://skia.googlecode.com/svn/trunk@7626 2bbb7eff-a529-9590-31e7-b0007b416f81
SetTest.cpp
9c68058b679aee81e6e0158e7fcbfb5d8479c91a 06-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix WritePixels test on ANGLE.

Don't upload BGRA to RGBA if not supported (ES2 w/ EXT BGRA extension).

R=senorblanco@chromium.org
Review URL: https://codereview.appspot.com/7305046

git-svn-id: http://skia.googlecode.com/svn/trunk@7622 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
ritePixelsTest.cpp
3cb406bb88f5aa09cf9f5a9554b4b1314cf1a2ee 05-Feb-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for origin-TopLeft render targets. Note that the default behaviour remains the same: textures default to origin-TopLeft, render targets default to origin-BottomLeft, and backend textures default to origin-BottomLeft. However, the caller can override the default by setting fOrigin in GrTextureDesc, GrBackendTextureDesc or GrBackendRenderTargetDesc.

Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7594 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ritePixelsTest.cpp
9349101b6cee7c4cfb570925a727c0bf7b0c676e 05-Feb-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for origin-TopLeft render targets in GL backend.

Committed: https://code.google.com/p/skia/source/detail?r=7545

Reverted in r7571; re-opening.

Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7592 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
1d1d4248f6e613352f468ca4c2f96e8fb8d00e3d 05-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Actually fix angle GLPrograms test.



git-svn-id: http://skia.googlecode.com/svn/trunk@7578 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
cf9faf6ce9e3351b4d4030753eb43c8cd2010e0c 05-Feb-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r7545 (render target origin change) due to layout test issues (see https://codereview.chromium.org/12210002/)



git-svn-id: http://skia.googlecode.com/svn/trunk@7571 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ritePixelsTest.cpp
60a9b8e11b10563167107cebafd1cc25d825d7b1 04-Feb-2013 Derek Sollenberger <djsollen@google.com> Merge Skia @7527

Conflicts resolved in:
include/gpu/GrBackendEffectFactory.h
src/core/SkPaint.cpp
src/effects/gradients/SkLinearGradient.cpp
src/ports/FontHostConfiguration_android.cpp

Change-Id: I5ad1f8f99f8fdbc26c5f98861701dd0c1cee82fa
042a2861b2aa7a7a9fff12503a4b297d6ee1d335 04-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Attempt to fix GLPrograms test on ANGLE bot.

R=senorblanco@chromium.org
Review URL: https://codereview.appspot.com/7281050

git-svn-id: http://skia.googlecode.com/svn/trunk@7550 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
ed8659b51d9f2bad3f004df6033d72cc32d71c0d 04-Feb-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement support for origin-TopLeft render targets in GL backend.

Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7545 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ritePixelsTest.cpp
67b915de99e6b89d476907930ac8c27afb64d10e 04-Feb-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GPU unit tests use GrContexts of different GL types.
Review URL: https://codereview.appspot.com/7281046

git-svn-id: http://skia.googlecode.com/svn/trunk@7540 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
LProgramsTest.cpp
puBitmapCopyTest.cpp
ashCacheTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
est.cpp
est.h
estClassDef.h
ritePixelsTest.cpp
kia_test.cpp
d686ac77c2c485c4a3302eda9c1de597a6f8c568 04-Feb-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@7527

Change-Id: I83c7c2152f5d2c303b4655a5a604f513a54f350a
tomicTest.cpp
lipCacheTest.cpp
lipStackTest.cpp
olorTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
LProgramsTest.cpp
rMemoryPoolTest.cpp
radientTest.cpp
nfRectTest.cpp
ListTest.cpp
D5Test.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
DFPrimitivesTest.cpp
athTest.cpp
ictureTest.cpp
remulAlphaRoundTripTest.cpp
uickRejectTest.cpp
eadPixelsTest.cpp
eader32Test.cpp
oundRectTest.cpp
HA1Test.cpp
calarTest.cpp
ortTest.cpp
treamTest.cpp
trokeTest.cpp
LSTest.cpp
est.cpp
riangulationTest.cpp
tilsTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
kia_test.cpp
747f1ecce610e1093b97dee7c22e4591c149514a 31-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7499 2bbb7eff-a529-9590-31e7-b0007b416f81
D5Test.cpp
HA1Test.cpp
cfcb1bef94a8cfb565d9450b38f57d4f5c83790a 31-Jan-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SHA1 and MD5 to utils.
https://codereview.appspot.com/7071055/


git-svn-id: http://skia.googlecode.com/svn/trunk@7496 2bbb7eff-a529-9590-31e7-b0007b416f81
D5Test.cpp
HA1Test.cpp
5b33211c5edafde82af781beaa1dbc295000a62f 30-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Start addressing the clang static analyzer issues

https://codereview.appspot.com/7249043/



git-svn-id: http://skia.googlecode.com/svn/trunk@7469 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
e94b5e40c5fb0e36eebcae1abfe04b9bc33583f4 30-Jan-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding a new unit test that demonstrates that dithering affects constant gradients
Related bug: crbug.com/169602
Review URL: https://codereview.appspot.com/7220063

git-svn-id: http://skia.googlecode.com/svn/trunk@7465 2bbb7eff-a529-9590-31e7-b0007b416f81
radientTest.cpp
e40591d5484762067f976d979c506f126c7779e1 30-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> return if we're invertible for the fast scale+trans case when we have no inverse
matrix to return.
Review URL: https://codereview.appspot.com/7231063

git-svn-id: http://skia.googlecode.com/svn/trunk@7464 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
94f20dc89a55483ba63db01829332065e6e1b2ac 28-Jan-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing crash in cloning empty SkPicture object

BUG=https://code.google.com/p/chromium/issues/detail?id=172062
TEST=Pictures unit test, test_clone_empty
Review URL: https://codereview.appspot.com/7223048

git-svn-id: http://skia.googlecode.com/svn/trunk@7430 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
cc78238f0b6aa1a7b3fc767758d9eeef4c1bffa9 28-Jan-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move vertex layout definitions from GrDrawTarget to GrDrawState.

This is the first step in revising vertex layouts so that the currently
installed GrEffects determine the current vertex layout.

https://codereview.appspot.com/7235051/


git-svn-id: http://skia.googlecode.com/svn/trunk@7423 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4991b8f23482afc1494fd17647421ce68de53331 28-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added toString to SkDrawLooper-derived classes

https://codereview.appspot.com/7195054/



git-svn-id: http://skia.googlecode.com/svn/trunk@7422 2bbb7eff-a529-9590-31e7-b0007b416f81
uickRejectTest.cpp
adc6536fe5baff2216fb76ecda6cc81c61109d5c 28-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove getter of writable GrEffectStage from GrDrawState.

Upcoming changes will require GrDrawState to know things about the set of installed effects. Thus all setting of effects must go through a GrDrawState function (setEffect()). This change accomplishes that.
Review URL: https://codereview.appspot.com/7214045

git-svn-id: http://skia.googlecode.com/svn/trunk@7411 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
e16efc1882ab34a0bb3ae361a2d37f840044cf87 26-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
tomicTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eader32Test.cpp
calarTest.cpp
trokeTest.cpp
est.cpp
riter32Test.cpp
kia_test.cpp
4e1cc6ac450903510b96c1b12f6ee6f420044a66 25-Jan-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Handle invalid glyph IDs on drawText methods.

Review URL: https://codereview.appspot.com/7179053

git-svn-id: http://skia.googlecode.com/svn/trunk@7401 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
4024f32d99b63a599c544a49f526e53c25135159 25-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7385 2bbb7eff-a529-9590-31e7-b0007b416f81
ortTest.cpp
82c2fec824937e4f8f3fb480fddee33231e30336 24-Jan-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove ConcaveToTriangles.


git-svn-id: http://skia.googlecode.com/svn/trunk@7383 2bbb7eff-a529-9590-31e7-b0007b416f81
riangulationTest.cpp
4bbdeac58cc928dc66296bde3bd06e78070d96b7 24-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optional cull-rect to patheffects, so they can do less work if their results
lie outside of the current clip-bounds (the cull rect).
Review URL: https://codereview.appspot.com/7206044

git-svn-id: http://skia.googlecode.com/svn/trunk@7378 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
72aa79cfea66d0311fe73f7b96dcda99cd168377 24-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> override drawOval and drawRRect in GatherPixelRefDevice, so we don't miss those,
and possibly crash trying to raster into an empty device.

http://code.google.com/p/skia/issues/detail?id=1086
Review URL: https://codereview.appspot.com/7193057

git-svn-id: http://skia.googlecode.com/svn/trunk@7372 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
7c56c16322ff64de969450cc6dc30605e8537a02 24-Jan-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix sort test.
https://codereview.appspot.com/7199050/


git-svn-id: http://skia.googlecode.com/svn/trunk@7364 2bbb7eff-a529-9590-31e7-b0007b416f81
ortTest.cpp
95ed55adc6b8f0cee063c2cf2e14782773b0087f 24-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make all GrContext members that return a texture also ref the texture for the caller.
Review URL: https://codereview.appspot.com/7198049

git-svn-id: http://skia.googlecode.com/svn/trunk@7362 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
194bf824f0b16be9de66233c9baf447f11e13758 23-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverse sense of convex-quad-fix compiler flag

https://codereview.appspot.com/7206045/



git-svn-id: http://skia.googlecode.com/svn/trunk@7349 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
f91c63e116fda7385d9265a00d3302f46baf25c2 23-Jan-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r7341



git-svn-id: http://skia.googlecode.com/svn/trunk@7347 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
c13ee606d82b3847c7ad09cbbc6d21fab46bdcc7 23-Jan-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> If getAdvance fails, getAdvanceData should not assert, but ignored.
Review URL: https://codereview.appspot.com/7127056

git-svn-id: http://skia.googlecode.com/svn/trunk@7341 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
6340a41108633ac1ce5941e5cd30538630c4c55b 22-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Let them eat GrEffectRef.

Changes the remaining existing code that operates on naked GrEffects to GrEffectRef.
Review URL: https://codereview.appspot.com/7124058

git-svn-id: http://skia.googlecode.com/svn/trunk@7321 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
46d3d39e65e0b3ea2ad7c91c176ccafb4df0fa24 22-Jan-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GPU support for axis-aligned ovals:
- Add drawOval base function to SkDevice, and override in SkGpuDevice
- Move isSimilarityMatrix to SkMatrix (renamed to isSimilarity) and fixed up unit test
- Since both SkGpuDevice::drawOval() and GrContext::drawPath() can try to draw ovals, added GrContext::canDrawOval() and GrContext::internalDrawOval() to avoid duplicate code
- Hooked in axis-aligned oval fill shader
- Enabled GPU stroked circles
- Added stroked circle bench test

Review URL: https://codereview.appspot.com/7137050



git-svn-id: http://skia.googlecode.com/svn/trunk@7304 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
36df7ed46b41ac31cb2205bfd3ae37659d61e2fb 19-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7293 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
64d6295b0f6d500ccb3e8091adb2c334925dc388 18-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> increase iteration count from 16 to 24, when computing cubic-line intersection.
This fixes crbug 170666. Before the fix, were were finishing the "clip" step
with a curve that was still partly negative, and so as assert would fire.

added unittest to confirm that the assert doesn't fire.



git-svn-id: http://skia.googlecode.com/svn/trunk@7278 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
148a3961b1c82a891012f2feb2a875cea2593170 17-Jan-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't die when there are no fonts available.
https://codereview.appspot.com/7147044/


git-svn-id: http://skia.googlecode.com/svn/trunk@7265 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostStreamTest.cpp
0ac6af49975c54c2debf41e9200af416ecd2d973 16-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Wrap GrEffects in GrEffectPtr.

This is the first step towards automatic recycling of scratch resouces in the cache via ref-cnts.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7092061

git-svn-id: http://skia.googlecode.com/svn/trunk@7222 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
ff21c2e0ae23da0f4742b47d4d37969a2a18bd99 16-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7215 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
4e23068b374023d43c4c725138d523721d975892 15-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Re-enable inst counting in debug builds.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7098066

git-svn-id: http://skia.googlecode.com/svn/trunk@7206 2bbb7eff-a529-9590-31e7-b0007b416f81
rMemoryPoolTest.cpp
ListTest.cpp
kia_test.cpp
848148ec109172f9eef9a26fa23a520cf9072b5c 15-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix bug in cubic-clipper (SkEdgeClipper). When we chop the cubic on Top/Bottom
of the cliprect, we (correctly) clamp the Y coordinate of the control-point
right next to the on-curve point that was chopped (this ensures we don't go
slightly outside of the clip-rect due to imperfect T value calculation). However,
the code was also clamping the other control-point as well, resulting in warping
the cubic, which could sometimes force it outside of the clip.

The fix is to just remove the line of code that clampped the 2nd control-point.

unittest added to reproduce a test cubic that triggered an assert, due to the
cubic being outside of the cliprect. The test (w/o the fix) will assert in
a SK_DEBUG build.
Review URL: https://codereview.appspot.com/7100056

git-svn-id: http://skia.googlecode.com/svn/trunk@7184 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
e490420efc931db8d2c8f397ddf704aab980295d 09-Jan-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Ensure that SkMemoryStream does not crash dereferencing fData.

SkMemoryStream attempts to dereference fData in multiple places.
Instead of allowing it to be NULL, resulting in a crash, set it
to SkData::NewEmpty().

Add a test for SkStream that will crash when its SkData is set to NULL.

Review URL: https://codereview.appspot.com/7061059

git-svn-id: http://skia.googlecode.com/svn/trunk@7111 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
50c79d886bf435d3a9cad056885370e2c3f526ad 08-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Enable warnings-as-errors on Windows.
Review URL: https://codereview.appspot.com/7066054

git-svn-id: http://skia.googlecode.com/svn/trunk@7094 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
5f429b098f46b0dc36f823e38a72e56d3ee9d39c 08-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix signed/unsigned comparison in PictureTest.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@7092 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
c3d753e345c1e67192afeabcbe5b75d491f5d29d 08-Jan-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix signed/unsigned comparison warning in PictureTest.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@7088 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
1d0f5a1e3b467fc2211e2a94b3806770b228b6e0 19-Dec-2012 Derek Sollenberger <djsollen@google.com> Merge Skia @6890

Change-Id: I12ae1c7ebdb566addf3d2783c8405793e842df8a
2b57dc6bb241a6627c4375ee54b73039983d03da 08-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warings. add SkTAbs()



git-svn-id: http://skia.googlecode.com/svn/trunk@7075 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
nfRectTest.cpp
atrix44Test.cpp
oundRectTest.cpp
0e51577a14f903ffeafa117a75954baeb173ffb9 07-Jan-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warning from scalar --> int32 conversion

BUG=

Review URL: https://codereview.appspot.com/7065050

git-svn-id: http://skia.googlecode.com/svn/trunk@7061 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
05af1afd429808913683da75644e48bece12e820 07-Jan-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> eliminate all warnings in non-thirdparty code on mac

Most of these issues were due to functions whose definitions appear in header files; I changed those functions to be 'static inline' instead of just 'static' or 'inline', which kills the warning for such functions.

Other functions that were static or anonymous-namespaced but were unused in cpp files were probably called at some point but are no longer; someone who knows more than I do should probably scrub all the functions I either deleted or #if 0'ed out and make sure that the right thing is happening here.

Lots of unused variables removed, and one nasty const issue handled.

There remains a single warning in thirdparty/externals/cityhash/src/city.cc on line 146 related to a signed/unsigned mismatch. I don't know if we have control over this library so I didn't fix this one, but perhaps someone could do something about that one.

BUG=

Review URL: https://codereview.appspot.com/7067044

git-svn-id: http://skia.googlecode.com/svn/trunk@7051 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
olorTest.cpp
ataRefTest.cpp
rawPathTest.cpp
athTest.cpp
LSTest.cpp
d96d17b9c113ac694138224249ff2ce643e961dd 04-Jan-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkRefPtr

(resubmit of https://codereview.appspot.com/7030059/)
TBR=junov@google.com

Review URL: https://codereview.appspot.com/7030065

git-svn-id: http://skia.googlecode.com/svn/trunk@7030 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
tilsTest.cpp
6eb549e8ca3d88d7536859fd5aa3343fc3011f2f 04-Jan-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Remove SkRefPtr" - r7021

samplecode/ still needs to be updated.

Review URL: https://codereview.appspot.com/7032048

git-svn-id: http://skia.googlecode.com/svn/trunk@7022 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
tilsTest.cpp
e8a76ae8edc4f90456f9d8f90e56bf97f2657f3a 04-Jan-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkRefPtr

Review URL: https://codereview.appspot.com/7030059

git-svn-id: http://skia.googlecode.com/svn/trunk@7021 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
tilsTest.cpp
2fb96cc5d713451216bd63d5dc8d19abc8550730 04-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> special-case matrix invert for translate and scale

update unittest to use diff scale-x and scale-y values, and tests for non-invertible scale matrices
Review URL: https://codereview.appspot.com/7027055

git-svn-id: http://skia.googlecode.com/svn/trunk@7019 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
ae57358447bac678e3fc458fa2857a349a6a7081 03-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkTreatAsSprite in SkDraw (with guard for chrome if needed)



git-svn-id: http://skia.googlecode.com/svn/trunk@6994 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
422188f3c6286d2991a029027958387b070e4dc6 03-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6982 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
ad514302158887002e83625a837f9ecbe540d1d3 02-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for SkTreatAsSprite
Review URL: https://codereview.appspot.com/7042044

git-svn-id: http://skia.googlecode.com/svn/trunk@6974 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
df194a47d21732af5671b358854b539233aba1e7 02-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove #ifdef for scalar==float, since it always is



git-svn-id: http://skia.googlecode.com/svn/trunk@6964 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
1a60dab449ee8ab3b4c4330a18fae57b5980363e 24-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6936 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
bcbef579d02e255b9a29b5db2d6804f4bfc76d1c 24-Dec-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkRRect::inset(), which mimics stroking



git-svn-id: http://skia.googlecode.com/svn/trunk@6935 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
b89a03c890668f98d9f8b269b6ad00824409435b 22-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6930 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
5595af1b2ebe6590e98641464d43d22281a7f295 21-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> unify how we handle externally-provided storage in SkWriter32, with the goal
of simplifying the logic in reserve() so it can be inlined/accelerated.
Review URL: https://codereview.appspot.com/6962048

git-svn-id: http://skia.googlecode.com/svn/trunk@6923 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
363e546ed626b6dbbc42f5db87b3594bc0b5944b 19-Dec-2012 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@6890

Change-Id: I40c1c8a08cc39102fe9f8b3f116206be17db12e2
nnotationTest.cpp
itmapFactoryTest.cpp
itmapHeapTest.cpp
itmapTransformerTest.cpp
anvasTest.cpp
hecksumTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
eferredCanvasTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
mptyPathTest.cpp
LProgramsTest.cpp
puBitmapCopyTest.cpp
nfRectTest.cpp
ListTest.cpp
atrix44Test.cpp
atrixTest.cpp
athTest.cpp
ictureTest.cpp
ipeTest.cpp
uickRejectTest.cpp
egionTest.cpp
oundRectTest.cpp
ortTest.cpp
tringTest.cpp
trokeTest.cpp
DLinkedListTest.cpp
LSTest.cpp
est.cpp
est.h
ileGridTest.cpp
kia_test.cpp
6b18d2471fc8bc2b917eec7ceba10a6b602b9f01 17-Dec-2012 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Limit the maximum number of dash segments per path

https://crbug.com/165432

In order to avoid trivial out-of-memory exploits, cap path dashing at 1000000 segments per path.

R=reed@google.com

BUG=

Review URL: https://codereview.appspot.com/6948063

git-svn-id: http://skia.googlecode.com/svn/trunk@6845 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
441a0058106d459a6289c861fcbe7bf4a32306bb 14-Dec-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix r6808 fix & some compiler warnings

https://codereview.appspot.com/6948047/



git-svn-id: http://skia.googlecode.com/svn/trunk@6820 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapTransformerTest.cpp
61b05dcc7ebe48663c3ba84b7bd7449d6c887ac1 14-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6809 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
3cb834bd27a16cc60ff30adae96659558c2dc91f 13-Dec-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Modifying SkTileGrid to support arbitrary query rectangles.
Exposing SkTileGrid functionality in the public API through SkTileGridPicture.
This patch also makes TileGrid and Rtree testable in gm, which revealed errors.

TEST=gm with '--tileGrid'
BUG=http://code.google.com/p/chromium/issues/detail?id=164636
Review URL: https://codereview.appspot.com/6933044

git-svn-id: http://skia.googlecode.com/svn/trunk@6783 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
8f0ca06ef44f7b94da549fbb0c5fab27092c5116 13-Dec-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing clip region test in deferred canvas, used to determine whether a draw operation occludes the entire canvas.

BUG=http://code.google.com/p/chromium/issues/detail?id=164580
TEST=unit test DeferredCanvas/TestDeferredCanvasFreshFrame
Review URL: https://codereview.appspot.com/6934045

git-svn-id: http://skia.googlecode.com/svn/trunk@6780 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
306ab9d5de38f2a547fd1d69aedbe69b5c6617cc 13-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6774 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
bfa0401ab60b83abf30c7cca4c326282360948fe 12-Dec-2012 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use double precision when iterating in SkDashPathEffect::filterPath()

Extremely large path_length/dash_length ratios may cause us to loop
indefinitely otherwise.

R=reed@google.com

BUG=

Review URL: https://codereview.appspot.com/6926051

git-svn-id: http://skia.googlecode.com/svn/trunk@6773 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
8cdf0f52ff395d4053f7ed5c20861c42eba25d31 12-Dec-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding quickContains API method to SkClipStack

BUG=http://code.google.com/p/chromium/issues/detail?id=164580
TEST=unit test ClipStack/quickContains
Review URL: https://codereview.appspot.com/6919044

git-svn-id: http://skia.googlecode.com/svn/trunk@6760 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
31114c69f39befd50d2b755b7d0dd1cda2c6d2ab 12-Dec-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create SkBitmapChecksummer and associated SkBitmapTransformer

As needed to start capturing gm image checksums.
Review URL: https://codereview.appspot.com/6920050

git-svn-id: http://skia.googlecode.com/svn/trunk@6759 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapTransformerTest.cpp
hecksumTest.cpp
ca47aae7ecfdafb5e88baee13737908b79a4c716 12-Dec-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Minor cleanup

https://codereview.appspot.com/6927054/



git-svn-id: http://skia.googlecode.com/svn/trunk@6756 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
c7b4be7f110bc7b487c3c3f28d82877584e74c2f 11-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6746 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
41e850f07454172dbe1504f2c1190a6fa5f0cf95 10-Dec-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing logic error in deferred canvas unittest.

Fixing an inverted test condition. The tested feature is not broken, but the test was passing the inverted test because code just above was missing a restore call, which was affecting the test.
Review URL: https://codereview.appspot.com/6921044

git-svn-id: http://skia.googlecode.com/svn/trunk@6745 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
57a54e33cfe771c792b1086ba67484cb95938d5d 10-Dec-2012 vollick@chromium.org <vollick@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkMatrix44 constructor that allows user to control the initialization
method. Preliminary results using Chromium's cc_perftests
show that we can avoid almost half of the default constructors from
redundantly/unnecessarily initializing the matrix to identity.

Review URL: https://codereview.appspot.com/6872056

git-svn-id: http://skia.googlecode.com/svn/trunk@6742 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
45a15f551b5b3c6c747d8eaf6466b7d3b76a8fae 10-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Modifications to GrPatherRenderer(Chain) interfaces to support clip mask manager.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6904069

git-svn-id: http://skia.googlecode.com/svn/trunk@6741 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
7f805fff69e38114c2cb214d3482514ab37d430b 10-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable failing test on android.
Review URL: https://codereview.appspot.com/6899059

git-svn-id: http://skia.googlecode.com/svn/trunk@6738 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
7c9d539d8843ad75a1c249633bbc8bb331f5035e 10-Dec-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> In SKP serialization, use existing encoded data.

If an SkBitmap has encoded data, write that during serialization
rather than reencoding it.

Add a test to ensure that this does not modify the output stream,
so the reader need not know the difference.

Review URL: https://codereview.appspot.com/6884054

git-svn-id: http://skia.googlecode.com/svn/trunk@6732 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
edf32d5b0e7694833287024e03da38521a0adf05 10-Dec-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing SkClipStack::clipDevPath so that it will not convert rectangular paths to rectangle clips if inverse fill.

BUG=http://code.google.com/p/chromium/issues/detail?id=164580
TEST=unit test ClipStackTest/test_rect_inverse_fill
Review URL: https://codereview.appspot.com/6880044

git-svn-id: http://skia.googlecode.com/svn/trunk@6731 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
a2a31928470dfb642880f6ab2e4d34b1c7f5d476 07-Dec-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix some extract subset bugs.

In SkBitmap::extractSubset, perform a deepCopy, if the pixelRef supports it.

Fixes a bug in the 'extractbitmap' gm, which attempts to draw a subset of a texture backed bitmap (if the canvas is really an SkGpuCanvas).

Also fix some bugs that happen when there is a pixel offset. These fixes get bypassed by the deepCopy, but a user can still set a pixel offset manually.

When copying GPU backed bitmap with a pixel offset, copy the offset.

If the new config is the same as the old, copy fRowBytes as well.

Add a function to SkBitmap.cpp (getUpperLeftFromOffset) to find the x,y coordinate to use when copying to a new config.

Fix a bug where readPixels copied to the correct desired config and we were setting the generation ID to match even though the desired config was not the same as the original config (caught by my new tests!).

Add some tests to verify the correct behavior.

Review URL: https://codereview.appspot.com/6839043

git-svn-id: http://skia.googlecode.com/svn/trunk@6710 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
b485832b664fe6d44f832919e28d50fb0e54b48a 07-Dec-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Mark 64-bit constants as ULL to fix broken 32-bit Mac 10.6 build
TBR=bungeman
Review URL: https://codereview.appspot.com/6867079

git-svn-id: http://skia.googlecode.com/svn/trunk@6704 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
0bba6bd78af026f0d7445ed1e99ba81181ae93b4 07-Dec-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace SkConsistentChecksum with SkCityHash (now including CityHash via DEPS)

Alternative to https://codereview.appspot.com/6847087/ ('Change SkConsistentChecksum to use SuperFastHash')
Review URL: https://codereview.appspot.com/6867060

git-svn-id: http://skia.googlecode.com/svn/trunk@6701 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
d21444aab7128c97f4e0eb5e9bf05111d5037292 07-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6699 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
dbfac8a72393eaf01670aeb3244de0e18d8faf98 06-Dec-2012 junov@google.com <junov@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Defining new color constat for transparent color
Review URL: https://codereview.appspot.com/6901044

git-svn-id: http://skia.googlecode.com/svn/trunk@6696 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
lipCubicTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
mptyPathTest.cpp
ipeTest.cpp
uickRejectTest.cpp
4c2443e36fdc6c095b17e90baa4a2f26a6f00b08 06-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use ReduceClipStack in ClipMaskManager.

R=robertphillips@google.com

This will require some gpu rebaselining (complexclip_rect_aa, complexclip_aa, aaclip, simpleaaclip, complexclip_aa_layer)xy
Review URL: https://codereview.appspot.com/6884051

git-svn-id: http://skia.googlecode.com/svn/trunk@6694 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
34cd70a5810b3cf37b44de1ce080a911a8b342c8 06-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make the clip reducer operate on int rects. Remove redundant Gr from func
name.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6890045

git-svn-id: http://skia.googlecode.com/svn/trunk@6688 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
0264fb4543b0d8cebe00f1ee32433784f4ceb074 06-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6687 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
6699e7ea2e981dccc2f3c41b5dcf1c860b11558d 06-Dec-2012 Jean-Baptiste Queru <jbq@google.com> Merge skia @5967

Change-Id: I8c637470b52c8277a781111c2ac2d1dcce7d84fa
80bacfeb4bda06541e8695bd502229727bccfeab 05-Dec-2012 Jean-Baptiste Queru <jbq@google.com> initial snapshot, trunk@5966

Change-Id: I5c9aa88bd82f150da9f5b1152bc2d5aa4baaabb2
AClipTest.cpp
nnotationTest.cpp
tomicTest.cpp
itSetTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
lurTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
equeTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
rawTextTest.cpp
mptyPathTest.cpp
illPathTest.cpp
latDataTest.cpp
lateTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
eometryTest.cpp
puBitmapCopyTest.cpp
rContextFactoryTest.cpp
rMemoryPoolTest.cpp
radientTest.cpp
ashCacheTest.cpp
nfRectTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emsetTest.cpp
etaDataTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
ictureTest.cpp
ictureUtilsTest.cpp
ipeTest.cpp
ointTest.cpp
remulAlphaRoundTripTest.cpp
uickRejectTest.cpp
TreeTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
eader32Test.cpp
efCntTest.cpp
efDictTest.cpp
egionTest.cpp
calarTest.cpp
haderOpacityTest.cpp
k64Test.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
DLinkedListTest.cpp
LSTest.cpp
est.cpp
est.h
estClassDef.h
estSize.cpp
estXCode/Tests.xcodeproj/project.pbxproj
oUnicode.cpp
riangulationTest.cpp
nicodeTest.cpp
tilsTest.cpp
ArrayTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
algrind.supp
170bd792e17469769d145b7dc15dea6cd01b7966 05-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move GrReducedClip to its own files.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6891045

git-svn-id: http://skia.googlecode.com/svn/trunk@6686 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
99b5c7f94ba5ef0c9cb464e34834cd5adea37a0e 05-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> optimize translate and scale
add map2() to optimize for mapping an array of 2D points into homogeneous 4-vector
Review URL: https://codereview.appspot.com/6874064

git-svn-id: http://skia.googlecode.com/svn/trunk@6685 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
73b140a9f668c189b0682cc5f82d9fb57ff8bc15 05-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6669 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
a444430281ea35cb76fb42516978b4a93221c2c7 04-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrReduceClipStack use a caller provided query rect rather than return a
bounds.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6865059

git-svn-id: http://skia.googlecode.com/svn/trunk@6665 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
4b90b1122c93e6600ea352f4ccf1dfc54c8bb146 04-Dec-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Handle recording a bitmap if copy fails.

If SkBitmapHeap::insert() returns INVALID_SLOT, assert at picture
record time so we can debug, but allow it to continue in release
mode, so that we can still capture a picture. At playback time,
print a message so we know that there was an error.

Review URL: https://codereview.appspot.com/6873050

git-svn-id: http://skia.googlecode.com/svn/trunk@6664 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
ebce0301082cda9dc3e3298f6db91d46fe66298b 04-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix stale iterators in LList test. Add newline to end of SkTLList.h



git-svn-id: http://skia.googlecode.com/svn/trunk@6663 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
8182fa0cac76e7e6d583aebba060229230516887 04-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkClipStack::Iter use SkClipStack::Element.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6871051

git-svn-id: http://skia.googlecode.com/svn/trunk@6661 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
e659c2e820de0b8d12d81247ed4430022ded0a90 04-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6660 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
atrix44Test.cpp
atrixTest.cpp
7d68335eb427547606497eb4edea81acce7891f9 03-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add getTypes() to SkMatrix44, to cache how complex the matrix is.
add bench

optimize operator== by performing 4 compares in a row before checking
optimize setconcat by noting when we can write the answer directly into this

At least on this macbook, I had to mark helpers like isIdentity() as inline to get them inlined.
Review URL: https://codereview.appspot.com/6863053

git-svn-id: http://skia.googlecode.com/svn/trunk@6655 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
dd3f7a9efefc486833d564527367155eb93691d4 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland r6649 with fix for build errors.



git-svn-id: http://skia.googlecode.com/svn/trunk@6653 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
acc71aa5c2e9349d9501d1b2a6cb6a33325cd73c 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert 6649 due to build breaks.



git-svn-id: http://skia.googlecode.com/svn/trunk@6651 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
4928f86edaef8a91efd9bf4b30951d0f38d5d7ee 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Insert in middle of SkTInternalLList and SkTLList, in place cons for
SkTLList.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6870050

git-svn-id: http://skia.googlecode.com/svn/trunk@6649 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
bbe52908a23d5eada9a0e5c58e620b35a2770c10 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkTLList, linked list class implemented on top of the internal llist class.

R=robertphillips@google.com
Committed: https://code.google.com/p/skia/source/detail?r=6644
Review URL: https://codereview.appspot.com/6869049

git-svn-id: http://skia.googlecode.com/svn/trunk@6647 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
DLinkedListTest.cpp
93f03324189f211db95c312b3cb08b435cc5ac34 03-Dec-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed remaining clang compiler warnings

https://codereview.appspot.com/6865053/



git-svn-id: http://skia.googlecode.com/svn/trunk@6646 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
oundRectTest.cpp
08cb7286c6fe50ceaabc15a16f0020d808390f43 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert change accidentally committed.



git-svn-id: http://skia.googlecode.com/svn/trunk@6645 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
DLinkedListTest.cpp
d29902e0d7e0a5860b6e4b5d11f4730a0728dc17 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkTLList, linked list class implemented on top of the internal llist class.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6869049

git-svn-id: http://skia.googlecode.com/svn/trunk@6644 2bbb7eff-a529-9590-31e7-b0007b416f81
ListTest.cpp
DLinkedListTest.cpp
42619d8df206b0bcd36d952909d972b8961e75de 03-Dec-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename SkTDLinkedList to SkTInternalLinked list, add some methods useful for forthcoming SkTLList.
Review URL: https://codereview.appspot.com/6858101

git-svn-id: http://skia.googlecode.com/svn/trunk@6643 2bbb7eff-a529-9590-31e7-b0007b416f81
DLinkedListTest.cpp
c3d7d90973528527131c72549b10c2a21300e0ac 30-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6632 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
oundRectTest.cpp
5fac58c91d8053dcc05c5bc72cfccee9246d9add 29-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkClipStack::Iter::combinedNext.
Review URL: https://codereview.appspot.com/6844114

git-svn-id: http://skia.googlecode.com/svn/trunk@6619 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
9f686f3639ff87e6d28b4ffcc42feebeca90f8d8 29-Nov-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create a factory to decode an SkBitmap from an SkData.

Add a test and a GM for the factory, and a PNG file for it to decode.
The PNG file is copyright-free, obtained from
http://openclipart.org/detail/29213/paper-plane-by-ddoo

In cmykjpeg, do not attempt to decode in the constructor, since it
currently crashes on Mac (if you provide the correct resource path).
Even when we fix this crash there is no need to do it in the
constructor, since we create all of the gms in order to
get their names (to determine whether to run them).

Review URL: https://codereview.appspot.com/6847122

git-svn-id: http://skia.googlecode.com/svn/trunk@6618 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapFactoryTest.cpp
fe7b1ed30a75cecfe80d1ba4d1f60295e99aeef0 29-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkPictureUtils::GatherPixelRefs()
Review URL: https://codereview.appspot.com/6845106

git-svn-id: http://skia.googlecode.com/svn/trunk@6615 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
83a853aa65c9f380dbaa9637d9be1d676d1991ed 29-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix the gr/gl destruction order in Test.cpp

R=djsollen@google.com
Review URL: https://codereview.appspot.com/6851126

git-svn-id: http://skia.googlecode.com/svn/trunk@6602 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
f4d1b3911831d2111a351b2742b3a94a9d17f92e 29-Nov-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove legacy flag for android from tests

Review URL: https://codereview.appspot.com/6782133

git-svn-id: http://skia.googlecode.com/svn/trunk@6600 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
0945bde5999da38b2de4a0998225a25901c4e429 29-Nov-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix test app to ensure that we destroy our GPU resources.

The problem arises on devices like the Nexus 10 where we allow the
destruction of resources using the destructor of a static variable.
However, we have no guarentee that the GPU driver has not already
cleaned up it's resources prior to our static destructor.

Review URL: https://codereview.appspot.com/6851124

git-svn-id: http://skia.googlecode.com/svn/trunk@6599 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
kia_test.cpp
5985e7c4d13b04d6b819bfff3df44f1dd3eb35b8 29-Nov-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkRoundRect start

https://codereview.appspot.com/6815058/



git-svn-id: http://skia.googlecode.com/svn/trunk@6595 2bbb7eff-a529-9590-31e7-b0007b416f81
oundRectTest.cpp
edb26fdb8349a727b226e90cbeab06cd25f5cac0 28-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Set empty/wide-open genID on clip stack in more places and fix a bug in GrReduceClipStack.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6847116

git-svn-id: http://skia.googlecode.com/svn/trunk@6579 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
26daa8bbeee92fb763de4f3885a5193d4ab2c827 27-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Temporarily disable clip stack reduce test while working on fix.



git-svn-id: http://skia.googlecode.com/svn/trunk@6567 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
705e84094494613a4659fcabe29f76eb003f9809 27-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make the clip stack reduction test generate inverse filled paths.

Also adds some comments to GrReduceClipStack.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6847109

git-svn-id: http://skia.googlecode.com/svn/trunk@6561 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
8ccf590b89cec1a5974b6f4b7b49ca67cc5036cf 27-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6556 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
e7b3d29a1289e64130dd0ec905d94feedc9d1064 26-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Actually fix GPU-less build.



git-svn-id: http://skia.googlecode.com/svn/trunk@6555 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
a4e13c85b23fe7530ae89a84ef671ebd5e451e80 26-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix GPU-less build.

Unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@6554 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
51a6286c241c1dc750d263ed9676079c898148b0 26-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a function that computes a reduced representation of the clip stack.

Also adds a unit test. The function is not yet used other than in the test.
Review URL: https://codereview.appspot.com/6855098

git-svn-id: http://skia.googlecode.com/svn/trunk@6553 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
a8a3b3d9a027ad54ce20f8b4ed7c577a176b31ca 26-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for bad enum use when adding contours
Review URL: https://codereview.appspot.com/6849103

git-svn-id: http://skia.googlecode.com/svn/trunk@6547 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
1c9c0d37111e6ff7a74a2908bf62a0d3954f2bb5 22-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6540 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
athTest.cpp
223137f49d1a4e805f5c1b1c20b7fd68719ac54b 21-Nov-2012 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove GrRandom API in favor of SkRandom.

TEST=tests
R=bsalomon@google.com

Review URL: https://codereview.appspot.com/6855062

git-svn-id: http://skia.googlecode.com/svn/trunk@6539 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
f74dd16e9a4f6b439a26192f20d1da83845ed6e5 21-Nov-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add self-test that reveals SkChecksum weakness
Review URL: https://codereview.appspot.com/6845064

git-svn-id: http://skia.googlecode.com/svn/trunk@6535 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
7775fd5779e632d6f5724e0e5d39ed347cf965b0 21-Nov-2012 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Deferred canvas can now be flushed if an image is beyond a certain size to avoid a costly image copy.

BUG=http://code.google.com/p/chromium/issues/detail?id=137924
TEST=TestDeferredCanvasBitmapSizeThreshold unit test
Review URL: https://codereview.appspot.com/6852071

git-svn-id: http://skia.googlecode.com/svn/trunk@6527 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
f68154a3cf43eb22d45be11f3b09e25440c366a6 21-Nov-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add isRect variant that returns path closure and direction.

Add path test to verify that when isRect() returns false,
output parameters are unchanged.
Review URL: https://codereview.appspot.com/6855074

git-svn-id: http://skia.googlecode.com/svn/trunk@6524 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
bfe90370ea68798b2b9b5ba44142db67d99555e8 21-Nov-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> detect wrapped rect in path

Allow a rect to start in the middle of a span, and
wrap all the way around.

Initialize variable to suppress warning.

Add tests to detect rects constructed from a stroked
path.
Review URL: https://codereview.appspot.com/6847082

git-svn-id: http://skia.googlecode.com/svn/trunk@6522 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
b0a327e9390da5865d4c56db5e5259adc3380d37 21-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6521 2bbb7eff-a529-9590-31e7-b0007b416f81
trokeTest.cpp
603dbedf293839e6707e2d4dfdd3949b06f9762c 20-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add specialty strokeRect() to SkStroke, which can return much cleaner results
Review URL: https://codereview.appspot.com/6843093

git-svn-id: http://skia.googlecode.com/svn/trunk@6510 2bbb7eff-a529-9590-31e7-b0007b416f81
trokeTest.cpp
3458716b52aa25dcd1b270141c7628c380696e35 20-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6500 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
f11cf9ff885c81e29f55283174ca34ce2fc5fd23 19-Nov-2012 vollick@chromium.org <vollick@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkMatrix44::setColMajord, etc.

We have accessors for efficiently getting the matirx data, and it would be nice
if we had similar methods for setting the matrix entries.

Review URL: https://codereview.appspot.com/6851063

git-svn-id: http://skia.googlecode.com/svn/trunk@6494 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
56f233ab54d228f3ce05d0f7e15996424f9d5dd2 19-Nov-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add two nested rect detector to path

Tease apart existing one rect path detector so
that a new variant can detect two nested rects as well.

Add tests to verify that both one and two rect
detectors both work and return the correct results.

Suppress other warnings in PathTest.
Review URL: https://codereview.appspot.com/6850059

git-svn-id: http://skia.googlecode.com/svn/trunk@6475 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
013c5d9107a4abd50e879ca66cf60b0c3a8256d4 16-Nov-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> In SkBitmapHeap, defer adding owners for new bitmaps.

When using an SkFlatDictionary to flatten shaders, the
dictionary can try to insert a duplicate bitmap shader
that uses a bitmap which has been removed from the
bitmap heap.

This change was originally suggested by junov in
https://codereview.appspot.com/6713048/.

Add a test to verify that deferring the owners works.
Without the change to bitmap heap the test would fail
(and crash in debug mode).

Also remove an unused function from SkFlatDictionary.

BUG=http://code.google.com/p/chromium/issues/detail?id=143923

Review URL: https://codereview.appspot.com/6842051

git-svn-id: http://skia.googlecode.com/svn/trunk@6471 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapHeapTest.cpp
b947625800a26194fcf63d7b57dadb1a63677f6a 15-Nov-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused (and undefined) SkColorSpace parameter.



git-svn-id: http://skia.googlecode.com/svn/trunk@6427 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
9b21c25e742d6a8b69bee8b049e79877f93b5936 14-Nov-2012 vollick@chromium.org <vollick@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkMatrix44::setTranspose

It turned out that adding getDouble(...) and setDouble(...) made this change
easier, so I've included that in this cl as well.

Review URL: https://codereview.appspot.com/6845048

git-svn-id: http://skia.googlecode.com/svn/trunk@6424 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
cec8de68217186d0f5676a696de44343aaa61de7 14-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6413 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
9bee33afbeca29f531c8455513b925f6e93da633 13-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a conservativelyContainsRect function to SkPath.
Review URL: https://codereview.appspot.com/6852044

git-svn-id: http://skia.googlecode.com/svn/trunk@6411 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
fbb0ed959de64f16d236d2f0d81ddf5cb318e1fe 13-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6409 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
3959a76ab086a4adbdb9d48977fa276ce0213cb1 13-Nov-2012 vollick@chromium.org <vollick@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Changing the visibility of SkMatrix44::determinant().

Review URL: https://codereview.appspot.com/6819080

git-svn-id: http://skia.googlecode.com/svn/trunk@6395 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
30c174b9ce6b9777ee50ae0d0565a01b2a060f01 13-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkPath cache the result of cheapComputeDirection.
Review URL: https://codereview.appspot.com/6810111

git-svn-id: http://skia.googlecode.com/svn/trunk@6394 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
20fb0c7f22a0bee68bf620f765836a60ca80f9b5 13-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for degenerate serifs to computeDirection



git-svn-id: http://skia.googlecode.com/svn/trunk@6391 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
453995e01d884d62ce2e808e0067e494c0c9c7fa 10-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6376 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
1ea95be560b38a71e3f24749c4e5e3d3564e4c6c 09-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add explicit mapScalars and mapMScalars entry-points, instead of just map()



git-svn-id: http://skia.googlecode.com/svn/trunk@6373 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
80b577eba6bd8ad2065e3bd9113b9bb86c4a5288 09-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add quick-n-dirty test for concat on matrix44
Review URL: https://codereview.appspot.com/6827069

git-svn-id: http://skia.googlecode.com/svn/trunk@6371 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
d9f7503e0cb0c4db856f53b4bdeec1332db6f296 09-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6362 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
6898d52c371309d81c2184ea991785d2485323e4 08-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add centerX() and centerY() to SkIRect (because they made me)
Review URL: https://codereview.appspot.com/6826078

git-svn-id: http://skia.googlecode.com/svn/trunk@6360 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
72b2e6fff3f54c6aa80a98eab4c73f02a8cd450d 08-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6344 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
egionTest.cpp
e8ca6c6e3a55634ac76efe5aceafaf8d669f43ba 07-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Combine multiple intersecting rects in SkClipStack::Iter.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6816104

git-svn-id: http://skia.googlecode.com/svn/trunk@6339 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
adc58e4f485a24a3f28587bdcd3b90e5cbd09659 07-Nov-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Unit testing for SkTileGrid
Review URL: https://codereview.appspot.com/6827053

git-svn-id: http://skia.googlecode.com/svn/trunk@6331 2bbb7eff-a529-9590-31e7-b0007b416f81
ileGridTest.cpp
bb094b947bb53374f5ad3df1b0cc71f41d43d9bf 07-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix SkRegion::intersects(rect) where the part of the rgn that we intersect is
the last run. The old bug was that we did an early exit from the loop because
we were comparing against the next rgn.bottom, instead of the current one.

inspired and fixed by danakj http://code.google.com/p/skia/issues/detail?id=958
Review URL: https://codereview.appspot.com/6812099

git-svn-id: http://skia.googlecode.com/svn/trunk@6327 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
796a1753d96eb0c76e742c8288617d758ddf33df 07-Nov-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix SkRegion::contains(rect), thanks to danakj and http://code.google.com/p/skia/issues/detail?id=958



git-svn-id: http://skia.googlecode.com/svn/trunk@6324 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
5a7ae4f5e5de3be99210dd9df89794f52c7c6d6e 07-Nov-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkRegion tests, inspired by http://code.google.com/p/skia/issues/detail?id=958



git-svn-id: http://skia.googlecode.com/svn/trunk@6323 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
dbe49f735484f8862e378b63d0a074a301093dd0 05-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove default texture coords / texture matrix
Review URL: https://codereview.appspot.com/6775100

git-svn-id: http://skia.googlecode.com/svn/trunk@6293 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4adfab8745fd0dec1201e16c2ea89ab8e6b14cea 02-Nov-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split off SkConsistentChecksum from SkChecksum
as part of https://goto.google.com/ImprovingTheSkiaRebaseliningProcess
Review URL: https://codereview.appspot.com/6820074

git-svn-id: http://skia.googlecode.com/svn/trunk@6270 2bbb7eff-a529-9590-31e7-b0007b416f81
hecksumTest.cpp
ortTest.cpp
b9086a026844e4cfd08b219e49ce3f12294cba98 01-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace GrMatrix with SkMatrix.
Review URL: https://codereview.appspot.com/6814067

git-svn-id: http://skia.googlecode.com/svn/trunk@6247 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
7158e6acca1b1ecc321d4d514a31cba11b5ead60 01-Nov-2012 borenet@google.com <borenet@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve NaCl support

- Add nacl_make script to build Skia targets for NaCl using gyp
- Add nacl_interface for command-line apps
- Add nacl_sample as front-end for SampleApp
- Add freetype to DEPS
- Various gyp tweaks for NaCl

TODO:
- Implement GL interface
- Implement font host
- Fix plumbing so that SampleApp works properly
Review URL: https://codereview.appspot.com/6671044

git-svn-id: http://skia.googlecode.com/svn/trunk@6245 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
d8b5faca043100d7a1e4594b4d10e462532af390 01-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland r6233 with fix.



git-svn-id: http://skia.googlecode.com/svn/trunk@6241 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
115b06f3d51902a122621e897360ba80153527b3 01-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Re-revert r6233.



git-svn-id: http://skia.googlecode.com/svn/trunk@6239 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
c3a58f345de16c185db3a20578c7ddf52bc89d38 01-Nov-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reland r6233 with fix for config conversion texture matrices.

git-svn-id: http://skia.googlecode.com/svn/trunk@6238 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4b2e1c8807fd1eb8b42e71ec7e29b6fc189d3476 29-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rebase gpu_dev up to r5182



git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6187 2bbb7eff-a529-9590-31e7-b0007b416f81
2eaaefd7e6a58339b3f93333f1e9cc92252cc303 29-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Pass GrCustomStage to key-generation functions and emitCode().

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6819046

git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6182 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
e8ebeb1f8fde6525bbab988c6090a5d3ab19855b 29-Oct-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add option to gm: write out images into a hierarchy, rather than a flat set of files
BUG=https://code.google.com/p/skia/issues/detail?id=743
Review URL: https://codereview.appspot.com/6810047

git-svn-id: http://skia.googlecode.com/svn/trunk@6167 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
08283afc265f1153834256fc1012519813ba6b73 26-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename GrSamplerState to GrEffectStage.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6777053

git-svn-id: http://skia.googlecode.com/svn/trunk@6135 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
46fba0d79335f17429bb71d87a04d93fb2ee992b 25-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename StageKey and related stuff.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6785049

git-svn-id: http://skia.googlecode.com/svn/trunk@6130 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
93897637bc65eab919be40ec4b1b2c3242179b24 25-Oct-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a callback to cleanup TLS data on Windows.

Add a test to ensure that it works.

BUG: http://code.google.com/p/skia/issues/detail?id=939

Review URL: https://codereview.appspot.com/6785045

git-svn-id: http://skia.googlecode.com/svn/trunk@6126 2bbb7eff-a529-9590-31e7-b0007b416f81
LSTest.cpp
396e61fe440590744345e0c56970b26ab464591d 25-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename GrProgramStageFactory to GrBackendEffectFactory.
Review URL: https://codereview.appspot.com/6773044

git-svn-id: http://skia.googlecode.com/svn/trunk@6125 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
16e3ddea6a80972aced04b21b1d66377fa95e7c7 25-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Platform/Engine -> Backend
createPlatform -> wrapBackend

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6785044

git-svn-id: http://skia.googlecode.com/svn/trunk@6123 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
021fc736f89fddac4f26b3f32f50263ff8fe3279 25-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GrCustomStage Renaming Part 5

Stuff found by searching for "stage".

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6772043

git-svn-id: http://skia.googlecode.com/svn/trunk@6089 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
8b0e2340e11e973d27aea39ec65e6bc9738224a5 25-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6088 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
a8790debaab6c5e3b6a4a51d2cc91ae5aea9b2dd 24-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> If a path is known to be nonfinite, don't forget that in our autobounds
helper. "Once a non-finite, always a non-finite".

Inspired by crbug/157157
Review URL: https://codereview.appspot.com/6764047

git-svn-id: http://skia.googlecode.com/svn/trunk@6087 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
f271cc7183fe48ac64d2d9a454eb013c91b42d53 24-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GrCustomStage Renaming Part 3

Rename all things *CUSTOM_STAGE*, customStage*, and other miscellany

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6769048

git-svn-id: http://skia.googlecode.com/svn/trunk@6081 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
a469c28c3c16214733a25201a286970f57b3d944 24-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CustomStage Renaming Part 1

Search and replace:
GrCustomStage->GrEffect
GrCustomStageTestFactory->GrEffectTestFactory

renamed the cpp/h files from customStage->effect

reordered gypi, #includes, forward decls to maintain alphabetical sort.

manually fixed up some whitespace and linewraps

deleted a commented out #include

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6758046

git-svn-id: http://skia.googlecode.com/svn/trunk@6076 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
158618ec62c36b8261e195f04567e09ed76f6534 23-Oct-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Removed degenerate quads from zero radius Chrome-style round rects

https://codereview.appspot.com/6737059/



git-svn-id: http://skia.googlecode.com/svn/trunk@6053 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
6a748ad8d82576c4ce59e9b2409d41a93bf05cdf 19-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6013 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
c7a37c7bb2279d8c15d6fcbaf38f59dbd727eb6c 19-Oct-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Place r5997 (make arcto's convex) behind a compiler flag to delay day of reckoning with Webkit baselines



git-svn-id: http://skia.googlecode.com/svn/trunk@6012 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
7790912e6e8a64fc9161e0df26d76e695aa9f05c 18-Oct-2012 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update CanvasTest to do elementary tests for PDF too.
Review URL: https://codereview.appspot.com/6709053

git-svn-id: http://skia.googlecode.com/svn/trunk@5998 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
b95eaa8d0842a8bba97f0bc7e19cfd9172d09722 18-Oct-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Altered arcTo's canonical points to (usually) be convex

https://codereview.appspot.com/6709051/

This will require rebaselining of: degeneratesegments, shadertext & shadertext2



git-svn-id: http://skia.googlecode.com/svn/trunk@5997 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
989a95ea77230e8347da18876e1bd5f39a78ebb5 18-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5989 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
ce65f385a0d31a93a31ffd57478de4b8c4e833b3 17-Oct-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing refcount leak in SkBitmapHeap caused by collisions in SkFlatDictionary

BUG=http://code.google.com/p/chromium/issues/detail?id=155875
TEST=DeferredCanvas unit test, subtest TestDeferredCanvasBitmapShaderNoLeak
Review URL: https://codereview.appspot.com/6713048

git-svn-id: http://skia.googlecode.com/svn/trunk@5982 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
67e78c9e47c38a51816412a24a10f4fe2db142a3 17-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use GrCustomStage to implement color matrix.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6716044

git-svn-id: http://skia.googlecode.com/svn/trunk@5975 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
f57c01bdcfdf1c923b9a473974bfe6f8c66eca3e 13-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5943 2bbb7eff-a529-9590-31e7-b0007b416f81
olorTest.cpp
atrixTest.cpp
223d81d8821bffa9b0c9fe608737952ac5c68c32 12-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add experimental test for different 8888->565 blends (disabled)



git-svn-id: http://skia.googlecode.com/svn/trunk@5916 2bbb7eff-a529-9590-31e7-b0007b416f81
olorTest.cpp
97cd69ca23b27d88e08727366c29c1147eb564de 12-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix matrix type in setRectToRect
Review URL: https://codereview.appspot.com/6655055

git-svn-id: http://skia.googlecode.com/svn/trunk@5913 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
3768853169d5eac2198cd1199637edb1101b47b5 12-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r3219. r3219 was a revert of r3036. r3036 made extractSubset copy the opaque bit but was reverted because of a partally-loaded jpeg issue in WK which has since been fixed:
https://bugs.webkit.org/show_bug.cgi?id=78239

Related chrome bug: http://code.google.com/p/chromium/issues/detail?id=114107



git-svn-id: http://skia.googlecode.com/svn/trunk@5911 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
ba998f2ddc5a904376bfdb118976868b9ee2b6e8 12-Oct-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn on GPU AA clipping

https://codereview.appspot.com/6638048/



git-svn-id: http://skia.googlecode.com/svn/trunk@5909 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
5b6f91643d3ad1bdcdd65329d656f0fc43174be3 12-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5908 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
8cef67aada2e8776a6741dce6211dc77fc9272df 11-Oct-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing SkDeferredCanvas to not consider paint as opaque when xfermode source coeff depends
on destination pixel value

TEST=DeferredCanvas unit test
BUG=http://code.google.com/p/chromium/issues/detail?id=154748



git-svn-id: http://skia.googlecode.com/svn/trunk@5907 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
0e354aacd84d3bede3f97cbde35a54ba62a89533 08-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove external matrix feature.

We haven't been testing this for nearly two years.

R=reed@google.com
Review URL: https://codereview.appspot.com/6640044

git-svn-id: http://skia.googlecode.com/svn/trunk@5857 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
2fc2359aaa8807606854f44a3f38c836a03977cd 03-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix test_small_segments3 path measure test.
Review URL: https://codereview.appspot.com/6601050

git-svn-id: http://skia.googlecode.com/svn/trunk@5792 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
52c2437c73065094e183d875672c5c34aef34ba6 03-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5780 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
5987f58036574ccf23049b5fe71f29a441d0641d 02-Oct-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> build iOS with 'make all'

This builds all skia tests by treating iOS tools
as executable applications. A few warnings were
fixed as well.

Removed old trace draw code and remnants.
Review URL: https://codereview.appspot.com/6597063

git-svn-id: http://skia.googlecode.com/svn/trunk@5776 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
21b519d56f9838c2e6e7abe704d3313e03f6f754 02-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> catch empty stack in restorefixup called by clipRect
write stress-test for save/clip/restore peephole optimization



git-svn-id: http://skia.googlecode.com/svn/trunk@5774 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
44a42ea8b22a845a419b8ae3b47c4619fdec0215 01-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 1. remove references to (deprecated) SkGpuCanvas
2. remove references to setDevice (soon to be deprecated)
Review URL: https://codereview.appspot.com/6597055

git-svn-id: http://skia.googlecode.com/svn/trunk@5751 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
ritePixelsTest.cpp
52a00cac514dfd9cedb85a9c3e92fdb3e32a03f7 01-Oct-2012 junov@google.com <junov@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding virtual method to SkDeferredCanvas::NotificationClient for signaling when commands are skipped due to the skip on clear optimization.

TEST=DeferredCanvas unit test
BUG=http://code.google.com/p/chromium/issues/detail?id=116840
Review URL: https://codereview.appspot.com/6590050

git-svn-id: http://skia.googlecode.com/svn/trunk@5747 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
373ebc634573364c27b1ebd35bb537ef1285cba4 26-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Suppress some warnings on linux.

R=reed@google.com
Review URL: https://codereview.appspot.com/6572046

git-svn-id: http://skia.googlecode.com/svn/trunk@5687 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
atrixTest.cpp
TreeTest.cpp
ccaa002dd81a6a8bd5acb7a2fa69a2437873c1fd 25-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix some linux build warnings
Review URL: https://codereview.appspot.com/6571050

git-svn-id: http://skia.googlecode.com/svn/trunk@5675 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ritePixelsTest.cpp
a0c2bc24381fea063008f9c8823756eb020603b3 21-Sep-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make flattenables no longer depend on global static initializers.

Instead, force all builds to call InitializeFlattenables.

Remove the make_debugger script, which was created to force
rebuilding without global static initializers so that all flattenables
would be linked. It is no longer necessary since all flattenables
will be linked thanks to InitializeFlattenables, which now can (and
must) be called when global static initializers are turned on.

BUG=https://code.google.com/p/skia/issues/detail?id=903
BUG=https://code.google.com/p/skia/issues/detail?id=902

Review URL: https://codereview.appspot.com/6548044

git-svn-id: http://skia.googlecode.com/svn/trunk@5642 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
251a7667d2a3c6b7ebfbf318af9b93744042df06 21-Sep-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix name generation - / needs to be escaped.

BUG=chromium 148422

Review URL: https://codereview.appspot.com/6542044

git-svn-id: http://skia.googlecode.com/svn/trunk@5641 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
c544325fdb7148b5cbcf199325b137e814ea457f 21-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable experiemental hack to try to speedup floor



git-svn-id: http://skia.googlecode.com/svn/trunk@5636 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
4c5ea4480341f0f663b51e9d78b948bc0a785f4d 21-Sep-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5635 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
fb10389403cf1cc771e103016207fde84c5f4825 20-Sep-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding a silent playback option to SkGPipeRead
Testing state consistency after silent playback in CanvasTest indirectly
through SkDeferredCanvas.

BUG=http://code.google.com/p/chromium/issues/detail?id=146178
TEST=CanvasTest unit test, and bench with --mode deferredSilent
Review URL: https://codereview.appspot.com/6542047

git-svn-id: http://skia.googlecode.com/svn/trunk@5619 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
c1ad0226087e10b1f300b5a45e3d6fdb23b8d1b8 19-Sep-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5594 2bbb7eff-a529-9590-31e7-b0007b416f81
ashCacheTest.cpp
972bfc494443671c18b0f003a56f3c27592a3bd2 18-Sep-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for r5587 compiler error (removed ../src/gpu in HashCacheTest.cpp)



git-svn-id: http://skia.googlecode.com/svn/trunk@5588 2bbb7eff-a529-9590-31e7-b0007b416f81
ashCacheTest.cpp
3b57dedc4b2945248669d8c6481e97991e1192aa 18-Sep-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added functor to GrTHashCache to allow discovery of un-reffed resources

http://codereview.appspot.com/6503126/



git-svn-id: http://skia.googlecode.com/svn/trunk@5587 2bbb7eff-a529-9590-31e7-b0007b416f81
ashCacheTest.cpp
968c17dddad328cd9e4bd3cb9dea2f47c206f231 17-Sep-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fixed compiler complaints

http://codereview.appspot.com/6499124/



git-svn-id: http://skia.googlecode.com/svn/trunk@5565 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
055c7c299cb47eebd360b809ad58a0006e2e55f7 15-Sep-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5561 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d614c6a4e059bd9ea5b882ca845e886a82aeff5c 14-Sep-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> For a picture playback with nothing written, use an empty SkData.

This prevents crashing when attempting to access fOpData.

BUG=https://code.google.com/p/skia/issues/detail?id=870

Review URL: https://codereview.appspot.com/6499108

git-svn-id: http://skia.googlecode.com/svn/trunk@5550 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureTest.cpp
8cae8358f78b81539f1006afe592a37f1604e67c 14-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix fragile cubic stepper, where we want to assert that each tesselated segment
is monotonically going down, but the finite math we use cannot ensure that...
so we explicitly pin the y-value after it is calculated.

add unittest that exercises the bug/assert that was found on an SVG site



git-svn-id: http://skia.googlecode.com/svn/trunk@5544 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
178a267a6cb1405805caf23fe074d68b509f76d3 13-Sep-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Address warnings from clang build bot

http://codereview.appspot.com/6506111/



git-svn-id: http://skia.googlecode.com/svn/trunk@5518 2bbb7eff-a529-9590-31e7-b0007b416f81
TreeTest.cpp
6d003d1ddced3e71684b8b3785d1e5a16255688d 11-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Wrap all GrCustomStage textures in GrTextureAccess, remove StageDesc::fInConfigFlags

Review URL: https://codereview.appspot.com/6494114



git-svn-id: http://skia.googlecode.com/svn/trunk@5485 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4813458d89fb276680168848bd861b307cf83f51 11-Sep-2012 rileya@google.com <rileya@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make BBoxHierarchy ref-counted, fix leak in RTreeTest.
Review URL: https://codereview.appspot.com/6489108

git-svn-id: http://skia.googlecode.com/svn/trunk@5484 2bbb7eff-a529-9590-31e7-b0007b416f81
TreeTest.cpp
bdb1be599436a894ab88dfc323d14c0afb496a6f 07-Sep-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added cache stats printout to tests

http://codereview.appspot.com/6495104/



git-svn-id: http://skia.googlecode.com/svn/trunk@5438 2bbb7eff-a529-9590-31e7-b0007b416f81
est.h
kia_test.cpp
2d8edaf17510e50261b8a4e2a0daf7e617674999 07-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Try r5428 again with fix



git-svn-id: http://skia.googlecode.com/svn/trunk@5431 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
4592df8e9142803c44334273f1b4f37d09ec65dd 07-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert 5428 and 5429.



git-svn-id: http://skia.googlecode.com/svn/trunk@5430 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
dbbf843dfe2a62ad341ebe4f946667204c64231d 07-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Consolidate texture access functions, provide default GrTextureAccess

Review URL: https://codereview.appspot.com/6506086/


git-svn-id: http://skia.googlecode.com/svn/trunk@5428 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
6c778164a743f8760dca251524d51848548b436f 06-Sep-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5410 2bbb7eff-a529-9590-31e7-b0007b416f81
TreeTest.cpp
100abf49e10544bc4f436bf1f38e6929779621f4 05-Sep-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Shut up some Mac (xcode 3) warnings

Review URL: http://codereview.appspot.com/6503053/



git-svn-id: http://skia.googlecode.com/svn/trunk@5402 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
eferredCanvasTest.cpp
1f45e934b68a5985b2127ec871ff593c3bfc7c2e 05-Sep-2012 rileya@google.com <rileya@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add R-Tree data structure.
Review URL: https://codereview.appspot.com/6489055

git-svn-id: http://skia.googlecode.com/svn/trunk@5401 2bbb7eff-a529-9590-31e7-b0007b416f81
TreeTest.cpp
d7e27822030b5ab7729e32c6d29227210dfe88ab 31-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> truncate our llist w/ null during rewind.



git-svn-id: http://skia.googlecode.com/svn/trunk@5375 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
a27096b4740775ae141fd0abaf456d706065c5ee 30-Aug-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Nightly_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5346 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
1cf58d03a87e1ff17cd47e9de3da4c678456618d 30-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkWriter32::rewindToOffset() -- used for peephole edits in picture recording



git-svn-id: http://skia.googlecode.com/svn/trunk@5345 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
405d0f43d8fa03874aee23669e5fdb38f21cc3e7 29-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> In which a series of things around attachToCanvas and writePixels are fixed

Review URL: https://codereview.appspot.com/6506051/



git-svn-id: http://skia.googlecode.com/svn/trunk@5341 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ritePixelsTest.cpp
c9ab987efcb7e8b69237d565f73c28c137610232 29-Aug-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement multi-threaded picture playback via cloning.

The CL adds SkPicture.clone() which produces a thread-safe copy by
creating a shallow copy of the thread-safe data within the picture and
a deep copy of the data that is not (e.g. SkPaint). This implementation
re-flattens the paints when cloning instead of retaining the flattened
paints from the recording process.

Changes were also needed to various classes to ensure thread safety

Review URL: https://codereview.appspot.com/6459105

git-svn-id: http://skia.googlecode.com/svn/trunk@5335 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
f66018798099750e639a8fa131fece492a050997 28-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Hide GrDrawTarget::Caps's member vars

Review URL: https://codereview.appspot.com/6499044



git-svn-id: http://skia.googlecode.com/svn/trunk@5328 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
5ee3f67ce35f19f6e5ef44b67db62e964f77d69d 28-Aug-2012 rileya@google.com <rileya@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added an overload of SkTQSort that sorts an array of values, rather than an array of pointers.

Also added some parentheses to all the QSort variants to get rid of a gcc warning.
Review URL: https://codereview.appspot.com/6492044

git-svn-id: http://skia.googlecode.com/svn/trunk@5311 2bbb7eff-a529-9590-31e7-b0007b416f81
ortTest.cpp
98a9e1f958c4992bd73899d84a1a1f20eca2c80e 27-Aug-2012 borenet@google.com <borenet@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change comment in PointTest to refer to GCC bug

git-svn-id: http://skia.googlecode.com/svn/trunk@5285 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
a04e8e842450e606dd938ddae17857849bd504d4 27-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Do premul and r/b swap conversions in a custom effect

Review URL: https://codereview.appspot.com/6473060/



git-svn-id: http://skia.googlecode.com/svn/trunk@5284 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
ritePixelsTest.cpp
b7b5d93359fdd3c5b2c48be7c5bbc4c978538af5 24-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix PointTest.
https://codereview.appspot.com/6486062/


git-svn-id: http://skia.googlecode.com/svn/trunk@5283 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
d6176b0dcacb124539e0cfd051e6d93a9782f020 23-Aug-2012 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)

This CL is part II of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6474054

git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
litRowTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCacheTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
ataRefTest.cpp
eferredCanvasTest.cpp
equeTest.cpp
rawBitmapRectTest.cpp
rawPathTest.cpp
rawTextTest.cpp
illPathTest.cpp
lateTest.cpp
ontHostStreamTest.cpp
ontHostTest.cpp
LProgramsTest.cpp
eometryTest.cpp
radientTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emsetTest.cpp
etaDataTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
efCntTest.cpp
egionTest.cpp
calarTest.cpp
haderOpacityTest.cpp
ortTest.cpp
treamTest.cpp
tringTest.cpp
LSTest.cpp
est.h
estSize.cpp
nicodeTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
2ea0a231a82b00e14c57806f6ae4664361d2ed16 23-Aug-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactored GrDLinkedList into SkTDLinkedList

http://codereview.appspot.com/6484045/



git-svn-id: http://skia.googlecode.com/svn/trunk@5247 2bbb7eff-a529-9590-31e7-b0007b416f81
DLinkedListTest.cpp
825bb95d6aac49abcdec76314498e1913b2104f2 22-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix GPU-less build.

Review URL: https://codereview.appspot.com/6478046

git-svn-id: http://skia.googlecode.com/svn/trunk@5228 2bbb7eff-a529-9590-31e7-b0007b416f81
puBitmapCopyTest.cpp
d5764e8ab731dd12df9293e52ce644eaa45333bd 22-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> When copying a bitmap, copy the generation ID.

Review URL: https://codereview.appspot.com/6462084

git-svn-id: http://skia.googlecode.com/svn/trunk@5227 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
puBitmapCopyTest.cpp
a9590fc00c4aa2fd34329e552e6396c457702a76 21-Aug-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed compilation issue when instance counting is disabled

http://codereview.appspot.com/6462089/



git-svn-id: http://skia.googlecode.com/svn/trunk@5210 2bbb7eff-a529-9590-31e7-b0007b416f81
rMemoryPoolTest.cpp
0342a85091fd430c90a142d155dc9642aa729d9e 20-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove _UPM_ GrPixelConfigs
Review URL: http://codereview.appspot.com/6460113/



git-svn-id: http://skia.googlecode.com/svn/trunk@5196 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
607d08b7db477ae11dbafff0bbebaa91f5c9fd7a 20-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Set LF property on a bunch of files.

Review URL: http://codereview.appspot.com/6461094/




git-svn-id: http://skia.googlecode.com/svn/trunk@5168 2bbb7eff-a529-9590-31e7-b0007b416f81
rawTextTest.cpp
d433c4eb6765c1f4654f761e3aad14b9922f44cd 17-Aug-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleaning up deprecated API in SkDeferredCanvas
Review URL: https://codereview.appspot.com/6461077

git-svn-id: http://skia.googlecode.com/svn/trunk@5152 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
72f3dca451f4739e20be0b4b198813677339205c 17-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Modify Read/WritePixelTests to print one pixel failure for each test case rather than every pixel

Review URL: http://codereview.appspot.com/6450154/



git-svn-id: http://skia.googlecode.com/svn/trunk@5147 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ritePixelsTest.cpp
3b3e895df6f8ee0f33010367c215944cd16a8334 16-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove EdgeType enum. Unimportant distinction, and removing speeds up quickReject
Review URL: https://codereview.appspot.com/6448161

git-svn-id: http://skia.googlecode.com/svn/trunk@5140 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
a22e2117e44efa4298dd0eb6df304a8166c8e9c3 16-Aug-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Extended Inst counting to find "unknown" leaked object (SkTMaskGamma)

http://codereview.appspot.com/6453127/



git-svn-id: http://skia.googlecode.com/svn/trunk@5123 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
efDictTest.cpp
est.cpp
est.h
tilsTest.cpp
5bdef29ae0f5a495381cd2c9787ce7c112e58354 15-Aug-2012 keyar@chromium.org <keyar@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> GrContextFactory can now expose the GLContext it is using.

Review URL: https://codereview.appspot.com/6461081

git-svn-id: http://skia.googlecode.com/svn/trunk@5105 2bbb7eff-a529-9590-31e7-b0007b416f81
rContextFactoryTest.cpp
d5d158b325f05902ac845f2f7c8c65ffe6074257 14-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Ensure that Pipe does not crash when attempting to draw after endRecording.

Add a test for drawing a bitmap and a bitmapshader after endRecording.

BUG=https://code.google.com/p/skia/issues/detail?id=774&can=3
Test=PipeTest

Review URL: https://codereview.appspot.com/6459088

git-svn-id: http://skia.googlecode.com/svn/trunk@5099 2bbb7eff-a529-9590-31e7-b0007b416f81
ipeTest.cpp
40fbb1810a1bbd53b56afaad8bb5ceee825a337d 14-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix broken test.

Review URL: https://codereview.appspot.com/6450133

git-svn-id: http://skia.googlecode.com/svn/trunk@5092 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
8afae61a57f87e4a50578effce6c428031499301 14-Aug-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up most clang warnings outside animator/

http://codereview.appspot.com/6464058/



git-svn-id: http://skia.googlecode.com/svn/trunk@5079 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
athTest.cpp
9ed02b9da25a76ee4c73c1ab19c18b899a223a17 14-Aug-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Augmenting SkDeferredCanvas notification interface to signal flushes and memory allocations
Renamed SkDeferredCanvas::DeviceContext to SkDeferredCanvas::NotificationClient

BUG=http://code.google.com/p/chromium/issues/detail?id=136828
TEST=Added coverage for new API to DeferredCanvas unit test. Added DeferredCanvas bench test to track deferred canvas overhead cost.
Review URL: https://codereview.appspot.com/6442108

git-svn-id: http://skia.googlecode.com/svn/trunk@5078 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
82aa7482cbf55ce6d42c692550cadee5e23146e4 13-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a zoom filter to Skia. This will be used on ChromeOS to implement the screen magnifier.

Committed on behalf of zork@chromium.org

Review URL: http://codereview.appspot.com/6354065/


git-svn-id: http://skia.googlecode.com/svn/trunk@5056 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
ed02c4d05e3f2ed86dbf4276a69827ab23810598 10-Aug-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix handling of infinite bounds during "fast transforms".

http://codereview.appspot.com/6449125/



git-svn-id: http://skia.googlecode.com/svn/trunk@5042 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
10dccde54a769b8d472bccf8c1993034b93ef58d 08-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkGPipe use SkBitmapHeap.

In the single process (or hypothetical cross process/shared address
space) mode, SkGPipe now uses SkBitmapHeap instead of SharedHeap.

Still need to use the shared heap for shaders as well as for cross
process.

TEST=PipeTest

Review URL: https://codereview.appspot.com/6461059

git-svn-id: http://skia.googlecode.com/svn/trunk@5008 2bbb7eff-a529-9590-31e7-b0007b416f81
ipeTest.cpp
4b163ed2c22facbe8891616874ae07ba7827d9c9 07-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Privatization:
move SkFDot.h to private
move parts of SkMath.h into SkMathPriv.h
Review URL: https://codereview.appspot.com/6461045

git-svn-id: http://skia.googlecode.com/svn/trunk@4997 2bbb7eff-a529-9590-31e7-b0007b416f81
olorTest.cpp
athTest.cpp
eadPixelsTest.cpp
ritePixelsTest.cpp
21830d90096d2dccc4168d99a427e78035ce942a 07-Aug-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor Bitmap Storage for SkPicture using SkPipe's design.

Refactor Picture and Pipe bitmap storage into common data structure

Update SkFlattenable buffers to be more modular.

This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
their own header.
2. Update and Add new read write methods for better clarity
and convenience.

BUG=

Review URL: https://codereview.appspot.com/6445079

git-svn-id: http://skia.googlecode.com/svn/trunk@4994 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
a1bf0fffff821d9c11809c89bd98d4ced480421a 07-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> uniquely name FS functions, add lighting effects to unit test

Review URL: http://codereview.appspot.com/6458080/


git-svn-id: http://skia.googlecode.com/svn/trunk@4992 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
2972bb5fd2441709026b350c6b9b66eecd80f868 07-Aug-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding storage of SkPath::fIsOval

http://codereview.appspot.com/6453085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4991 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
88e29146c1efc5ff8eec06076c9dce12684f2c11 07-Aug-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Moving DeferredDevice and DeferredGPipeController classes out of the deferred canvas API header
Review URL: https://codereview.appspot.com/6449104

git-svn-id: http://skia.googlecode.com/svn/trunk@4989 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
c73dd5c6880739f26216f198c757028fd28df1a4 07-Aug-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update SkFlattenable buffers to be more modular.

This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
their own header.
2. Update and Add new read write methods for better clarity
and convenience.

BUG=

Review URL: https://codereview.appspot.com/6448095

git-svn-id: http://skia.googlecode.com/svn/trunk@4980 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
3de7acc180e37c7c513f2b3425bd4616ea47fa57 07-Aug-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Removing the SkPicture backend from SkDeferredCanvas code
Review URL: https://codereview.appspot.com/6446095

git-svn-id: http://skia.googlecode.com/svn/trunk@4974 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
eferredCanvasTest.cpp
2e14ba8ceb41c68042ff133fecf0561a2c22efca 07-Aug-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding API to SkGPipe and SkDeferredCanvas for controlling memory usage externally

BUG=http://code.google.com/p/chromium/issues/detail?id=136828
Review URL: https://codereview.appspot.com/6454102

git-svn-id: http://skia.googlecode.com/svn/trunk@4971 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
e2faf17bcc523557e44ef443b48a53f286886a53 06-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Even when the pts are restricted to 32K values, we can still overflow computing
a fixed-point coefficient for quadratics. To avoid this, we bias these
coefficients, storing 1/2 of their actual value, and then apply the 2x unbias
in updateQuadratic().

Fixes http://code.google.com/p/chromium/issues/detail?id=140803
Review URL: https://codereview.appspot.com/6450099

git-svn-id: http://skia.googlecode.com/svn/trunk@4960 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
d9ee348720f933d8a23547ee36693880296810c5 06-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> If we lose precision computing sum of the dash intervals, then we can have the
same error when we subtract-in-a-loop with the phase. The result is that we can
read past the end of the array.

To fix this, we just pin the loop counter, and if we exhaust our intervals, we
just treat the phase as 0. Not precisely the exact answer, but we aren't going
to draw this dash correctly anyway, since it contains massive interval values
that will be imprecise given our current float implementation.

Fixes http://code.google.com/p/chromium/issues/detail?id=140642
Review URL: https://codereview.appspot.com/6458088

git-svn-id: http://skia.googlecode.com/svn/trunk@4959 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
0a7672f85ef7655b343679609d02018f83fcfc23 03-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add morphology, convolution, single texture, texture domain effects to new unit test system

Review URL: http://codereview.appspot.com/6442085/




git-svn-id: http://skia.googlecode.com/svn/trunk@4951 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
a68937c950847cea2eb7064ef5b63feb82ed3a71 03-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move SK_SUPPORT_GPU checks below first #includes in case the macro is defined in SkUserConfig.h rather than by the build system.



git-svn-id: http://skia.googlecode.com/svn/trunk@4948 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
LInterfaceValidation.cpp
rMemoryPoolTest.cpp
2a48c3adb7cf4fc754f99a41352210b4a99edf04 03-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix includes files missing in release builds from GrCustomStageUnitTest.h.

Also fix SK_SUPPORT_GPU=0 build breaks in gmmain.cpp and GLProgramsTest.cpp




git-svn-id: http://skia.googlecode.com/svn/trunk@4947 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
d472620458e2383e6dd949f4e1aaf61160717ffe 03-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Registry-based unit test for custom effects

Review URL: http://codereview.appspot.com/6447085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4946 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
1554360a9511d996e1618d19c163c810ef3f128c 02-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Store more behavior of SkFlatDictionary in SkFlatController.

Code refactoring for simplicity.

Review URL: https://codereview.appspot.com/6427046

git-svn-id: http://skia.googlecode.com/svn/trunk@4929 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
c3841b927ba32237a540949c408f78ad7682aa60 02-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move GL programs unit test code to tests project.

Review URL: http://codereview.appspot.com/6453079/



git-svn-id: http://skia.googlecode.com/svn/trunk@4927 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
cd62ecf39a81d9d85a7eb8508e14ce2834899e88 02-Aug-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing leak of SkPixelRef object in CanvasTest
Review URL: https://codereview.appspot.com/6441095

git-svn-id: http://skia.googlecode.com/svn/trunk@4925 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
5a69ef7f10cec376bf2e4b42273105994faba8e6 02-Aug-2012 borenet@google.com <borenet@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable ReadWriteAlpha test on Android

Failing on Nexus 7

Bug: http://code.google.com/p/skia/issues/detail?id=753
Review URL: https://codereview.appspot.com/6455077

git-svn-id: http://skia.googlecode.com/svn/trunk@4921 2bbb7eff-a529-9590-31e7-b0007b416f81
eadWriteAlphaTest.cpp
cf8fb1f6f03fc77f9927564f9ef9abeeeec508d2 02-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create GPU-less build of Skia.



git-svn-id: http://skia.googlecode.com/svn/trunk@4912 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
rMemoryPoolTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
eadWriteAlphaTest.cpp
est.cpp
ritePixelsTest.cpp
08eacc144711cd5d33513b2fba7a635ad28b7208 02-Aug-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added check for aa/bw rect merging

http://codereview.appspot.com/6449079/



git-svn-id: http://skia.googlecode.com/svn/trunk@4907 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
eef938c0a764ca24bfebf38655124c8fcb8144f2 01-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check that copied paths have the same segment-masks as their src



git-svn-id: http://skia.googlecode.com/svn/trunk@4898 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
0c3e5fe728ce4b8606819ee919a4b82f4d9efc85 01-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Pipe factory names independently from the flattenables using them.

Avoids an issue where a flattenable written twice might be written
differently (the first time the flat data may have a name, whereas
the second time it will have an index).

Also add a test which confirms that identical flattenables will have
the same SkFlatData representation.

BUG=https://code.google.com/p/skia/issues/detail?id=721
TEST=FlatDataTest.cpp

Review URL: https://codereview.appspot.com/6431057

git-svn-id: http://skia.googlecode.com/svn/trunk@4896 2bbb7eff-a529-9590-31e7-b0007b416f81
latDataTest.cpp
c0d3f2f627764ada39333143f4f73525fbece629 31-Jul-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix units per em test.


git-svn-id: http://skia.googlecode.com/svn/trunk@4873 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
641f8b19a6799b6d73ac17b9c2d2f8a5e6f5ad4d 31-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace GrClip with SkClipStack

http://codereview.appspot.com/6449070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4865 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
4b2af9c91d39c2176a32e7ba42a0276dca68034a 31-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add getUnitsPerEm() to SkTypeface



git-svn-id: http://skia.googlecode.com/svn/trunk@4863 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
7b11289b4e4d117bbcee6d2460b057d0fcf6e437 31-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added dev- & canv- prefixes to Ganesh bounding boxes to indicate coordinate space

http://codereview.appspot.com/6457061/



git-svn-id: http://skia.googlecode.com/svn/trunk@4856 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
lipStackTest.cpp
f8d904a7eed435b9de68fd2eef6d7f3c59fcc9cc 31-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GrClip no longer translates its clips (to better mimic SkClipStack's behavior)

http://codereview.appspot.com/6445052/



git-svn-id: http://skia.googlecode.com/svn/trunk@4848 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
c23a63b9e24ac2384466bc4f24ad10f010f25c75 31-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added test to ensure getConservativeBounds' result is clamped to render target

http://codereview.appspot.com/6447063/



git-svn-id: http://skia.googlecode.com/svn/trunk@4846 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
7dade42e6f2e35dd27b4090fd7894322d755d4db 27-Jul-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Always store pixels of mutable bitmaps when recording a SkPicture.

Prior to this CL mutable bitmaps only saved a copy of their pixels
if a flag was set at recording time. That flag has been removed
and the default behavior when recording a mutable bitmap is to
make a copy of it's pixels. This is the only way to ensure that
the pixels are not manipulated before we playback their contents.

However, enabling this behavior breaks the recording of extracted
bitmaps in SkPicture. This is because we currently cache bitmaps
within a picture based only on their pixelRef. This results in
false positive cache hit when drawing an extracted bitmap as it
shares a pixelRef with its orginating bitmap. Therefore we must
update the index of the bitmap cache to be both the pixelRef AND
the size and offset of the bitmap using those pixels.

BUG=
TEST=extractbitmap.cpp

Review URL: https://codereview.appspot.com/6439043

git-svn-id: http://skia.googlecode.com/svn/trunk@4809 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
589708bf7c706348b763e8277004cb160b202bdb 26-Jul-2012 rileya@google.com <rileya@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split SkGradientShader into separate files for each gradient subclass.
Review URL: https://codereview.appspot.com/6447049

git-svn-id: http://skia.googlecode.com/svn/trunk@4792 2bbb7eff-a529-9590-31e7-b0007b416f81
lampRangeTest.cpp
15011ee5e4068ab6523e432e435473a822ee7d80 26-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkDeferredCanvas query SkGPipeWriter for space allocated for bitmaps.

SkGPipe now has a method to report how much memory is used for its shared heap.

BUG=http://code.google.com/p/skia/issues/detail?id=738
TEST=DeferredCanvasTest

Review URL: https://codereview.appspot.com/6445046

git-svn-id: http://skia.googlecode.com/svn/trunk@4791 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
cc6493bbef7c9c2adf4b1ed8701e2ed015ae745d 26-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added ctor to SkClipStack and isEmpty method

http://codereview.appspot.com/6444048/



git-svn-id: http://skia.googlecode.com/svn/trunk@4787 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
0bb18bb264b26afca45452910437c09445e23a3c 26-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> explicitly track if a path is finite or not
we need this (it appears) so we can definitively reject non-finite paths
in canvas, before passing them down into the guts.
Review URL: https://codereview.appspot.com/6453047

git-svn-id: http://skia.googlecode.com/svn/trunk@4784 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
b10a6bd0a7df0ceeea0d53585c049450ec58b4b9 25-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactoring how SkDeferredCanvas manages mutable bitmaps

This CL makes the SkGPipe flavor of SkDeferredCanvas properly
decide whether to flush or record mutable bitmaps. The flushing
is now managed by conditionally switching the canvas to non-deferred
mode, which avoids an unnecessary transient copy of the bitmap.

BUG=http://code.google.com/p/chromium/issues/detail?id=137884
TEST=DeferredCanvas unit test, sub test TestDeferredCanvasMemoryLimit
Review URL: https://codereview.appspot.com/6421060

git-svn-id: http://skia.googlecode.com/svn/trunk@4756 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
4c2a2f7c5e8ec77771153f94c454adf21fd33805 25-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added isIntersectionOfRects to SkClipStack

http://codereview.appspot.com/6434050/



git-svn-id: http://skia.googlecode.com/svn/trunk@4745 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
dd3948899725041bf52e3a4eea922f9961ee0a9b 24-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid a loop in writeString and writePad by zeroing padding first.

Also add a benchmark to time the new improved writeString. Before
my change the bench took ~1.23ms and afterwards it takes ~.95ms.

Add some testing to ensure that writePad works properly.

TEST=Writer32Test, WriterBench

Review URL: https://codereview.appspot.com/6438045

git-svn-id: http://skia.googlecode.com/svn/trunk@4742 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
607fe077c893fdb230e29631be096de614a14e2a 24-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added bound computation to SkClipStack

http://codereview.appspot.com/6419048/

This will require re-baselining of complexclip* and filltypespersp



git-svn-id: http://skia.googlecode.com/svn/trunk@4730 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
f79430350d9f06a72b307af879d7f3bdec7ff706 23-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add protected method for internal_dispose overrides to jam fRefCnt before
calling destructor.

move SkTRefArray to actually inherit from SkRefCnt
Review URL: https://codereview.appspot.com/6422057

git-svn-id: http://skia.googlecode.com/svn/trunk@4719 2bbb7eff-a529-9590-31e7-b0007b416f81
efCntTest.cpp
e9617eb352483bf152dfd3a38083ffb99c4694b9 23-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> In SkWriter32::writeString, initialize all memory reserved.

SkFlatData compares data which is sometimes created by writeString.
Initialize all the memory in writeString so it does not compare
uninitialized memory.

See http://code.google.com/p/skia/issues/detail?id=721&thanks=721

Review URL: https://codereview.appspot.com/6428054

git-svn-id: http://skia.googlecode.com/svn/trunk@4715 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
bfeddae9da240693441556b2f278827e213f75e8 23-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix unbound memory consumption problem with run away deferred canvases.

With this CL, deferred canvases will trigger a flush when then the
memory allocated for recording commands (including flattened objects)
exceeds 64MB.

TEST=DeferredCanvas skia unit test, test step TestDeferredCanvasMemoryLimit
BUG=http://code.google.com/p/chromium/issues/detail?id=137884
Review URL: https://codereview.appspot.com/6425053

git-svn-id: http://skia.googlecode.com/svn/trunk@4714 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
a276975a62ef4d9941e40c831fdfe7852e0e243e 23-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for memory leaks in debug-build



git-svn-id: http://skia.googlecode.com/svn/trunk@4712 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
80ba7964cde0f7805d76cf0170cf3b920146a007 21-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkTRefArray, in hopes that it will enable more sharing between pictureplaybacks
in different threads.



git-svn-id: http://skia.googlecode.com/svn/trunk@4709 2bbb7eff-a529-9590-31e7-b0007b416f81
efCntTest.cpp
80214e26c57c5fea954006400852e8999e201923 20-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Made clarifying renamings to SkClipStack's iterators (and added to unit test)

http://codereview.appspot.com/6423051/



git-svn-id: http://skia.googlecode.com/svn/trunk@4692 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
426aebc8502654642bebfdda22af8acdae84cf05 20-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding new steps to Canvas unit test to validate that the deferred
canvas state coherence test case passes with sequences of draw commands
that trigger flushes and purges of deferred draw commands.

This CL confirms that using SkGPipe fixes the deferred canvas issues that are
the root problem of crbug.com/133432

BUG=https://code.google.com/p/chromium/issues/detail?id=133432
Review URL: https://codereview.appspot.com/6416049

git-svn-id: http://skia.googlecode.com/svn/trunk@4687 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
cff01c5b60d4969d817c34d002752cd379b1862a 18-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Improving CanvasTest to verify that the destination canvas of an SkDeferredCanvas has the same state as a plain SkCanvas that received the same draw commands.
This new test code shows that the SkGPipe port of SkDeferredCanvas solves problems we were having with SkPicture.
Review URL: https://codereview.appspot.com/6425048

git-svn-id: http://skia.googlecode.com/svn/trunk@4665 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
d074c3709afa6ea70888262a402603197d71dd11 18-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Need to apply matrix to advance in generateAdvance (as we already were in generateMetrics)
Fixes b/6833339
Expand existing unittest to detect this (we needed to set both scale and skew on the paint)



git-svn-id: http://skia.googlecode.com/svn/trunk@4647 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
2e41becaa90b06a17c2ac9fe30a1e34a747a87c9 16-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix for non-Windows-specific compiler error in r4624



git-svn-id: http://skia.googlecode.com/svn/trunk@4625 2bbb7eff-a529-9590-31e7-b0007b416f81
equeTest.cpp
0a78b0f4a2e1a3d7d1fbdb9b0b5dba5095db2e5a 16-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor SkDeque's iterator and allocation method

http://codereview.appspot.com/6353098/



git-svn-id: http://skia.googlecode.com/svn/trunk@4624 2bbb7eff-a529-9590-31e7-b0007b416f81
equeTest.cpp
50ccb0a73865b0d0f0dd48989dbf5aa4a27f4a72 16-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a skia method to perform an atomic add.

Complements sk_atomic_inc for when you want to increase by more than one.

This time, use the correct atomic add function on Windows.

Reviewed at https://codereview.appspot.com/6399050/

Review URL: https://codereview.appspot.com/6407048

git-svn-id: http://skia.googlecode.com/svn/trunk@4623 2bbb7eff-a529-9590-31e7-b0007b416f81
tomicTest.cpp
4e6dfa51525e174d79cb88800d8e5f2c88291270 16-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding bracketing save/restore calls to SkPicture at record time and
preparing tests for enforcing save/restore balancing constraints on SkPicture

Review URL: http://codereview.appspot.com/6354105/



git-svn-id: http://skia.googlecode.com/svn/trunk@4618 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
96cbd2c4d2ea7e138b65923a46fb77bc096a6782 16-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Add a method to atomic add."

This reverts commit eb539cf92f487daf9567ffbbba6b6653406d43ae.

BUG=
TEST=

Review URL: https://codereview.appspot.com/6395051

git-svn-id: http://skia.googlecode.com/svn/trunk@4615 2bbb7eff-a529-9590-31e7-b0007b416f81
tomicTest.cpp
e3f84f3911d6ab1c99030fef3200199755251d51 16-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a skia method to perform an atomic add.

Complements sk_atomic_inc for when you want to increase by more than one.

Review URL: https://codereview.appspot.com/6350106

git-svn-id: http://skia.googlecode.com/svn/trunk@4614 2bbb7eff-a529-9590-31e7-b0007b416f81
tomicTest.cpp
238be8c7e5de5a83517440a3db7f7965b47fb010 13-Jul-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Add link annotations.

Review URL: https://codereview.appspot.com/6346100

git-svn-id: http://skia.googlecode.com/svn/trunk@4609 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
DFPrimitivesTest.cpp
b630c6c8b766e5cba9a2d3acda421e3de1d6e6b0 13-Jul-2012 keyar@chromium.org <keyar@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Updated make_filepath test to reflect changes in picture_utils. TBR

Review URL: https://codereview.appspot.com/6350105

git-svn-id: http://skia.googlecode.com/svn/trunk@4606 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureUtilsTest.cpp
0cb1e2bcaec0693b3a927f48705a9eb6234021dc 12-Jul-2012 borenet@google.com <borenet@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable WritePixelsTest on Android

This fails on Xoom. Re-enable when #634 is fixed.
Review URL: https://codereview.appspot.com/6354099

git-svn-id: http://skia.googlecode.com/svn/trunk@4584 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
a6c9e0e02be390d36b80f4872c628edb3594208e 12-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup restore offsets at end of SkPicture recording

Review URL: http://codereview.appspot.com/6355099/
TEST=skia unit test CanvasTest, test step TwoClipOps
BUG=https://code.google.com/p/chromium/issues/detail?id=133432



git-svn-id: http://skia.googlecode.com/svn/trunk@4577 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
b0a34d80c5c7b06db8083a547f8e499781a9c169 11-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> idea: add annotation to SkPaint
Review URL: https://codereview.appspot.com/6355050

git-svn-id: http://skia.googlecode.com/svn/trunk@4555 2bbb7eff-a529-9590-31e7-b0007b416f81
nnotationTest.cpp
79382af267eedd5bd8fe727121b40bc5cbebae21 11-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove debugging printfs



git-svn-id: http://skia.googlecode.com/svn/trunk@4551 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
91bd45967c6ca1ec408a0fefd3de0dcf3d03294a 11-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkDataSet class, so SkAnnotation can be more immutable-like
Review URL: https://codereview.appspot.com/6354091

git-svn-id: http://skia.googlecode.com/svn/trunk@4542 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
e2589aeebf321f6d3b5005c19740beacee964be7 10-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkFlatData to have a sentinel value, allowing the Compare function to
not need a loop-end-test.
Review URL: https://codereview.appspot.com/6355086

git-svn-id: http://skia.googlecode.com/svn/trunk@4517 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
4eefe6132cbf77696134f65762ebcae574227b77 10-Jul-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Handle convex paths with degeneracies in cheap direction computation
Review URL: http://codereview.appspot.com/6349085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4515 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
59f46b81f8bdd1b524f5cc43bc27603f9604c71a 10-Jul-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed Windows compiler complaints

http://codereview.appspot.com/6392044



git-svn-id: http://skia.googlecode.com/svn/trunk@4511 2bbb7eff-a529-9590-31e7-b0007b416f81
lateTest.cpp
DFPrimitivesTest.cpp
athMeasureTest.cpp
oUnicode.cpp
c3d5831e052fb6baffc29fc4cd289fcc6a5ff388 09-Jul-2012 keyar@chromium.org <keyar@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow specific files and multiple inputs for picture testing tools.

Changed the render_pictures, bench_pictures and test_pictures.py so that multiple inputs can be given. Furthermore, specific files can also be specified.

Unit tests have also been added for picture_utils.cpp.

Committed http://code.google.com/p/skia/source/detail?r=4486

Review URL: https://codereview.appspot.com/6345054

git-svn-id: http://skia.googlecode.com/svn/trunk@4488 2bbb7eff-a529-9590-31e7-b0007b416f81
ictureUtilsTest.cpp
e60b9106ba4405fc499ac9f66ae7379327f0ff86 09-Jul-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for SkChecksum



git-svn-id: http://skia.googlecode.com/svn/trunk@4462 2bbb7eff-a529-9590-31e7-b0007b416f81
ortTest.cpp
a63a851afb2e5083cab3874853dd9363147a8aea 02-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update test for new NewFromCString behavior



git-svn-id: http://skia.googlecode.com/svn/trunk@4431 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
dbc936dff3357f74fc60e124d912a2179b909b0d 28-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkData::NewFromCString()



git-svn-id: http://skia.googlecode.com/svn/trunk@4383 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
b74af872cc1ce45768df3ae03fa86ad3ed76b582 27-Jun-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Separated Inst counting from the SK_DEBUG #define (now SK_ENABLE_INST_COUNT)

http://codereview.appspot.com/6353047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4376 2bbb7eff-a529-9590-31e7-b0007b416f81
rMemoryPoolTest.cpp
edae1416ba6ca8a47e208ed056680677d568dd73 25-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix metrics test to no longer include the cpp.

The inclusion of the cpp caused linker errors when building skia
components as shared libaries for inclusion in an Android app.
Review URL: https://codereview.appspot.com/6338063

git-svn-id: http://skia.googlecode.com/svn/trunk@4323 2bbb7eff-a529-9590-31e7-b0007b416f81
ArrayTest.cpp
4da34e36cb7a07c3a28ae2a135b1837c26fc7aea 19-Jun-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GrMemoryPool as a helper to override operators new/delete

Review URL: http://codereview.appspot.com/6306090/



git-svn-id: http://skia.googlecode.com/svn/trunk@4282 2bbb7eff-a529-9590-31e7-b0007b416f81
rMemoryPoolTest.cpp
b59ed515644331a12c779e8051c582aa3afd625c 15-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for http://code.google.com/p/chromium/issues/detail?id=131181



git-svn-id: http://skia.googlecode.com/svn/trunk@4266 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
fedd09ba7e218116df8a676069726de6e9d35277 13-Jun-2012 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Really fix the build.

git-svn-id: http://skia.googlecode.com/svn/trunk@4253 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
aaf1688959ba5dc74007e711599552928d255dfa 13-Jun-2012 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Speculative build fix. Tests do not fail locally.

git-svn-id: http://skia.googlecode.com/svn/trunk@4248 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
7e963605d5b8177c30afa0d8e5541b0fbe1b6e13 13-Jun-2012 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix the problem of rendering closePath not properly after a moveTo call in
canvas 2D interface. If there is a polyline, followed by a moveTo and a
closePath, both the moveTo and the closePath should be ignored for the purposes
of drawing, and the polyline should not be closed (unless force closed is true
(for filling, for instance).

Tested for path with both valid and degenerate content, when asked to
consume degenerates and not, force closed and not.

This patch also includes a uni test refactoring to reduce the amount of code
to test path iteration and zero length paths.

BUG=6297049

TEST=tests/PathTest.cpp, testIter method.
Review URL: https://codereview.appspot.com/6300086

git-svn-id: http://skia.googlecode.com/svn/trunk@4247 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
51c62a6cfadc302bb65bb5a98e358c93223dc73f 12-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add readPtr and writePtr to SkReader32 and SkWriter32
add template helper SkSWriter32, which allocates initial storage buffer
Review URL: https://codereview.appspot.com/6299075

git-svn-id: http://skia.googlecode.com/svn/trunk@4237 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
7886ad3de1aa523d5c71f1fa9f355dfcb2412d1d 11-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SK_CAN_USE_FLOAT (deprecated)



git-svn-id: http://skia.googlecode.com/svn/trunk@4232 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
calarTest.cpp
k64Test.cpp
94e75ee46a569cbcdf61fb7f04ee3a69d3ca0896 08-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename the existing flatten(void*) methods.

This change avoids naminc confusion with the SkFlattenable flatten methods and
also changes SkPath to use the void* model instead of taking a SkReader32.
Review URL: https://codereview.appspot.com/6299062

git-svn-id: http://skia.googlecode.com/svn/trunk@4215 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athTest.cpp
df9d656c352928f995abce0a62c4ec3255232a45 07-Jun-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkPath::getVerbs/countVerbs
Review URL: http://codereview.appspot.com/6306053/


git-svn-id: http://skia.googlecode.com/svn/trunk@4209 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
83226976b532141b26ff3a40f381a5d08ce3259d 07-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> extend asAGradient for Conical type (to be implemented by PDF and XPS)
Review URL: https://codereview.appspot.com/6308051

git-svn-id: http://skia.googlecode.com/svn/trunk@4207 2bbb7eff-a529-9590-31e7-b0007b416f81
radientTest.cpp
75b3c9633cb9a594dab0ccf51dab1e694c149a18 07-Jun-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move clientID into texture desc

http://codereview.appspot.com/6305044/



git-svn-id: http://skia.googlecode.com/svn/trunk@4201 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
eadWriteAlphaTest.cpp
42639cddc33746b351bbf07c540711eefffe191a 06-Jun-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warnings on Mac in tests

Fix these class of warnings:
- unused functions
- unused locals
- sign mismatch
- missing function prototypes
- missing newline at end of file
- 64 to 32 bit truncation

The changes prefer to link in dead code in the debug build
with 'if (false)' than to comment it out, but trivial cases
are commented out or sometimes deleted if it appears to be
a copy/paste error.
Review URL: https://codereview.appspot.com/6301045

git-svn-id: http://skia.googlecode.com/svn/trunk@4175 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
anvasTest.cpp
lipCacheTest.cpp
lipperTest.cpp
ataRefTest.cpp
mptyPathTest.cpp
illPathTest.cpp
ontHostTest.cpp
eometryTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
DFPrimitivesTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athTest.cpp
ointTest.cpp
eadWriteAlphaTest.cpp
ortTest.cpp
tringTest.cpp
fermodeTest.cpp
977b9c8af3ef1b9a2fa2a0037cf3734cf2ba13d9 05-Jun-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Instance counting for SkRefCnt-derived objects (w/ CanvasTest fix)

http://codereview.appspot.com/6242070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4170 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
4866cc0afb7571309d9fdecb221d919f663054c0 01-Jun-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding option to serialize mutable bitmaps in SkPicture

BUG=http://code.google.com/p/chromium/issues/detail?id=115654
REVIEW=http://codereview.appspot.com/6221066/



git-svn-id: http://skia.googlecode.com/svn/trunk@4130 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
d4144060731a94a5b057dfad407e6e3c294435cf 31-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Windows compiler complaint cleanup

http://codereview.appspot.com/6262047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4098 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
5739d2c168819394502e20cbe6071979b9c1038c 31-May-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Merge GrGpuGLShaders into its parent class, GrGpuGL

Review URL: http://codereview.appspot.com/6245076/



git-svn-id: http://skia.googlecode.com/svn/trunk@4095 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
f123ba9e21a6e19b67d9c3fc0ac337725a2f1737 31-May-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable TLSTest for now, to work around http://code.google.com/p/skia/issues/detail?id=619
Review URL: https://codereview.appspot.com/6259056

git-svn-id: http://skia.googlecode.com/svn/trunk@4090 2bbb7eff-a529-9590-31e7-b0007b416f81
LSTest.cpp
d2700eec7eb2e26beb206b88a0f0b6f3c5f49118 30-May-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor dictionaries for use by entities other than just SkPicture
Review URL: https://codereview.appspot.com/6101043

git-svn-id: http://skia.googlecode.com/svn/trunk@4077 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
00bf06a142e49f2d6f398127d7e3cf747559a461 30-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added cast to get MathTest working on Windows



git-svn-id: http://skia.googlecode.com/svn/trunk@4072 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
c20bc25b6e11fb068a9b4aefc1a2e576a98835ea 30-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use (float)(1 << 23) instead of 1.0p+23 since the latter isn't supported in VS



git-svn-id: http://skia.googlecode.com/svn/trunk@4068 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
c3b697298e1185397c192457a4587b6ad0559c93 30-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> win can't eat 1.0p+23 syntax for floats :(



git-svn-id: http://skia.googlecode.com/svn/trunk@4067 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
a7d7461cf0835fc42ba9b49feab947395ed73423 30-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove debugf



git-svn-id: http://skia.googlecode.com/svn/trunk@4066 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
744fabad474e3e111e7cbd8609cf7e209df17f32 29-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> addPoly() entry-point, to quickly add MoveTo+N*LineTo (useful in dashing)
Review URL: https://codereview.appspot.com/6256063

git-svn-id: http://skia.googlecode.com/svn/trunk@4061 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
8b06f1a7ff6d5a59387a90433064550de20787ee 29-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Detect when the caller was hairline AND strokeandfill, and resolve that into FILL
This fixes the unittests on WIN in the trybot for DEPS roll 4048
Review URL: https://codereview.appspot.com/6242057

git-svn-id: http://skia.googlecode.com/svn/trunk@4057 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
b6a4b7363faaf57e7dc123b040346e45c0efc9ea 21-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add



git-svn-id: http://skia.googlecode.com/svn/trunk@4010 2bbb7eff-a529-9590-31e7-b0007b416f81
LSTest.cpp
a550199c6f37e1b05a386ea57eee4c40cc91d84d 18-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CreateTypefaceFromStream for GDI.
http://codereview.appspot.com/5616047/


git-svn-id: http://skia.googlecode.com/svn/trunk@4001 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostStreamTest.cpp
ebd24962dfdb7a62cf97c0e3938851d56cabd10f 17-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change SkChunkAlloc to grow its allocations geometrically (not linearly)
plus add a bench and unittest for it.



git-svn-id: http://skia.googlecode.com/svn/trunk@3989 2bbb7eff-a529-9590-31e7-b0007b416f81
emsetTest.cpp
a02bc1519cf49afa31fb38bed097dd5014880d04 16-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> WeakRefCnt
http://codereview.appspot.com/5649046/


git-svn-id: http://skia.googlecode.com/svn/trunk@3978 2bbb7eff-a529-9590-31e7-b0007b416f81
efCntTest.cpp
7b463acd46b8df866d3a27fbaf69b0090c842d1e 16-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> speedup SkRect::isFinite() (almost 2x)
add SkRect:set(p0, p1) for quick bounds of 2 points



git-svn-id: http://skia.googlecode.com/svn/trunk@3967 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
6623fcd1ee33b35fa18e304e9c76272faa603cbf 15-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Convert AAClipCache's GrRects to GrIRects

http://codereview.appspot.com/6210057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3942 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
415e76a76091d06a3eeb4087c378bfa76947bc58 15-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix Fixed build



git-svn-id: http://skia.googlecode.com/svn/trunk@3937 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
30d90ebe7c05b7067f5c67bd8278371c2a355b02 15-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use x*0 instead of x!=x to detect non-finite values, since x*0 also detects infinities
and it is faster (at least faster in SkRect::set).

Add unittest for SkRect::set to see that it correctly detects NaN and infinities.




git-svn-id: http://skia.googlecode.com/svn/trunk@3936 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
706f6212c60dd8861a0ae922a77c455a08360aa3 14-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixes for Windows Release compiler complaints (overflow in const arith)

http://codereview.appspot.com/6210056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3926 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
4debcac8c38cae17a01e697578719c60a068052f 14-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Debug Windows compiler complaint fixes

http://codereview.appspot.com/6208055/



git-svn-id: http://skia.googlecode.com/svn/trunk@3924 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
athTest.cpp
DFPrimitivesTest.cpp
oUnicode.cpp
554875210043b34178f7ed6ac5bd682b1fad367b 14-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add bench and test for SkRefCnt.
http://codereview.appspot.com/6195071/

This also adds a cross platform SkThread for testing purposes.


git-svn-id: http://skia.googlecode.com/svn/trunk@3921 2bbb7eff-a529-9590-31e7-b0007b416f81
efCntTest.cpp
f105b109264f71dfb0bfd9977e6a5dd0a5a12f57 14-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Made clip mask cache use Scratch Texture system

http://codereview.appspot.com/6210044/



git-svn-id: http://skia.googlecode.com/svn/trunk@3920 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
18c464b460d062142ab7198724431a4d2ad7070d 11-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update the nearly_integral calculation to be (a) faster, and (b) to correctly
identify that the AA granularity is 1/4 of a pixel, not 1/16 (along an axis).



git-svn-id: http://skia.googlecode.com/svn/trunk@3919 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
f21c7041192a08c12a29f8a38da254c292f867c6 11-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix for r3903 compilation issue



git-svn-id: http://skia.googlecode.com/svn/trunk@3904 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
8fff356c8505f2ac78e1fc9dc17c1192e3a608e4 11-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Made clip mask cache reuse depend on mask size/bounds (instead of render target size)

http://codereview.appspot.com/6190067/



git-svn-id: http://skia.googlecode.com/svn/trunk@3903 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
d82f3fae9255e852f44a4ec185df67cc200da6f8 10-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for Android ClipCache unit test crash

http://codereview.appspot.com/6199063/



git-svn-id: http://skia.googlecode.com/svn/trunk@3902 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
50b8eadb9f3ffc3c61f52de11d2b042bb477d60f 10-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r3898 due to Android failures



git-svn-id: http://skia.googlecode.com/svn/trunk@3900 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
c3e050f322a0d29559f2872b0aee3c963e739cc1 10-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Re-enabling ClipCache unit test which now runs on Xoom w/ new tool chain



git-svn-id: http://skia.googlecode.com/svn/trunk@3898 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
7e6c4d16010550ee148f1c79cf088c0320fed5c1 10-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkPath::isLine(), similar to isRect()



git-svn-id: http://skia.googlecode.com/svn/trunk@3892 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
96a162eb71a9613ebadf8689128a6b2f50fe8f0d 09-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disabled new ClipCache unit test pending investigation of Android failures



git-svn-id: http://skia.googlecode.com/svn/trunk@3886 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
beeb97c94da3b2a4b3acfae7817f8d2fea70c8e8 09-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added stack to AA clip mask cache

http://codereview.appspot.com/6201058/



git-svn-id: http://skia.googlecode.com/svn/trunk@3885 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCacheTest.cpp
c6ce750c73c6586a5c2e88a0620b04e9569af401 08-May-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed some fixed point build Windows compiler complaints

http://codereview.appspot.com/6197063/



git-svn-id: http://skia.googlecode.com/svn/trunk@3867 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
c7a67cb57e43f8e140c7bd21318b5ad3e2db6b2f 07-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Just use std qsort
Review URL: https://codereview.appspot.com/6195052

git-svn-id: http://skia.googlecode.com/svn/trunk@3846 2bbb7eff-a529-9590-31e7-b0007b416f81
ortTest.cpp
0da0627646869b638aef6655bc7d94cda0cfa7f0 03-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix fixed-point build



git-svn-id: http://skia.googlecode.com/svn/trunk@3837 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
99c114e0ac732ba01705e24d12f5e4dd7e144abd 03-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> We were numerically overflowing our 16bit coordinates that we communicate
between these two procs. The fixes was in two parts:

1. Just don't draw bitmaps larger than 64K-1 in width or height, since we
can't represent those coordinates in our transport format (yet).
2. Perform an unsigned shift during the calculation, so we don't get
sign-extension bleed when packing the two values (X,Y) into our 32bit
slot.
Review URL: https://codereview.appspot.com/6173046

git-svn-id: http://skia.googlecode.com/svn/trunk@3836 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
684119d126942d7a68e7b0d8de4aad18c28f1744 02-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add more tests for rgn::intersects(rect)



git-svn-id: http://skia.googlecode.com/svn/trunk@3820 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
7ab71baf65eb7c5ee5b0025953baa5395c0fc5d4 02-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add more tests around contains for rects and regions



git-svn-id: http://skia.googlecode.com/svn/trunk@3818 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
d9689beb7fce225abbaa78063d46717ec92b19fd 01-May-2012 Derek Sollenberger <djsollen@google.com> Fix SkNWayCanvas to prevent crashes by setting up a device

This is a cherry-pick of two CL's from upstream Skia:
https://codereview.appspot.com/6092056/
https://codereview.appspot.com/6131062/

bug: 6400332
Change-Id: Ia833e7c0d4fd6e21a06980653450095176f5bd42
anvasTest.cpp
f0a062bc4573323abcf37394bb68e0230347a974 01-May-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add device to top level N-way canvas.
Review URL: https://codereview.appspot.com/6131062

git-svn-id: http://skia.googlecode.com/svn/trunk@3811 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
9d5f76a250502620952d4aaa2926ff5bfeffc980 01-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix bug (and add test) for drawing an inverse-path whose bounds do intersect
the clip, but whose edges do not (e.g. a curve). We used to overdraw a section
(and assert).



git-svn-id: http://skia.googlecode.com/svn/trunk@3809 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
8a0d8ff854a034ff742341a2eb4bf68ba6ea1b9c 30-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for how empty regions should behave in intersects() and contains()
Review URL: https://codereview.appspot.com/6134053

git-svn-id: http://skia.googlecode.com/svn/trunk@3795 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
67c3184a67c66e2e6f3d24ba6bccf1f3b32a5b7b 28-Apr-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for contains and intersects, in advance of optimization work



git-svn-id: http://skia.googlecode.com/svn/trunk@3787 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
ded44149856373072a8c6d2b2eacb213a1273a6e 27-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Apply fix from #3739 to quads and cubics as well
Fixes http://code.google.com/p/chromium/issues/detail?id=125249
Review URL: https://codereview.appspot.com/6137046

git-svn-id: http://skia.googlecode.com/svn/trunk@3786 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
c4ae974db67977e766b66fb42e58e088c6381e29 27-Apr-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkString.contains()
Review URL: https://codereview.appspot.com/6130046

git-svn-id: http://skia.googlecode.com/svn/trunk@3781 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
69afee1c8fd22affc873890cfcf766d6f5cfdcc2 25-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add isSimilarityTransform() and some tests

Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5999050/


git-svn-id: http://skia.googlecode.com/svn/trunk@3762 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
1df888bc3a502279eb46e6a71fbf257e1de940ed 25-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for numerical imprecision on phase
fixes http://code.google.com/p/chromium/issues/detail?id=124652



git-svn-id: http://skia.googlecode.com/svn/trunk@3761 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
e49aca968ca27d90ca919a972a86839ecaf1224a 24-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optional storage parameter to SkWriter32



git-svn-id: http://skia.googlecode.com/svn/trunk@3759 2bbb7eff-a529-9590-31e7-b0007b416f81
riter32Test.cpp
fab1ddd3a8893db58b2ce0afd28ecc73412ee871 20-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> only add pathmeasure segment if the accumulated length was actually changed,
and not based on if the local length was > 0. This is necessary since

assert(delta > 0); // true
prevDistance = distance;
distance += delta;
assert(distance > prevDistance); // not always true

Fixes https://bugs.webkit.org/show_bug.cgi?id=78979



git-svn-id: http://skia.googlecode.com/svn/trunk@3739 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
5bfa55b1cd067fa2fe1cbe409573aeaabd98d23c 19-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix unused-return-result-warning for invert/getPosTan



git-svn-id: http://skia.googlecode.com/svn/trunk@3733 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
athMeasureTest.cpp
8b0a335b6b4bcaebde35100307d371b4614c3fd6 19-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> retarget fonttable tests to use SkTypeface api, rather than (should-be-private) SkFontHost api



git-svn-id: http://skia.googlecode.com/svn/trunk@3732 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
6aa2965ca814dd3329b65398b5c5af980e54b101 18-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Track oval in SkPath

Committed on behalf of Guanqun.Lu@gmail.com

Review URL:http://codereview.appspot.com/6012047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3716 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
f3488ebaac4a553be5462e073c3cf5a6ce719151 17-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r3705 for fixed pt failures.



git-svn-id: http://skia.googlecode.com/svn/trunk@3706 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
c047d414a4a1ecdc5d6d12d31eea9323e06b851e 17-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> track oval in SkPath

Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/6012047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3705 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
a90aa534986ffa2019b6a99260bbba086a5c608e 16-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix clamping when we chop a cubic
Review URL: https://codereview.appspot.com/6039048

git-svn-id: http://skia.googlecode.com/svn/trunk@3691 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
6853e808a464ca75ff1328338d1eb55ff27c4337 16-Apr-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Addressed more Windows compiler complaint issues

http://codereview.appspot.com/6007056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3689 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
lipCubicTest.cpp
lipperTest.cpp
aintTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
calarTest.cpp
d0b95896d66422444f787825cf78d384b8643d4d 16-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r3681 due to fixed point failures in tests.




git-svn-id: http://skia.googlecode.com/svn/trunk@3684 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
8d75bf6ab356cc8371e2053de7242d200e41e309 16-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add isSimilarityTransform() and some tests

Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5999050/




git-svn-id: http://skia.googlecode.com/svn/trunk@3681 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
6093e6582970364241a10d62b05efee50606c5e8 14-Apr-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> dd DrawPathTest to gyp
add regression tests for bug 533



git-svn-id: http://skia.googlecode.com/svn/trunk@3678 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
90c07ea1d0aa6b7f20252c43fe23ee5ddc1d23cb 13-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> replace getTotalClipStack() with replayClips()+ClipVisitor



git-svn-id: http://skia.googlecode.com/svn/trunk@3670 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
2b2ede3e713065e1bac461787b0aafb03eaf871f 12-Apr-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Decouple the SkFlattenable from SkReader32/SkWriter32.

The current impl for SkFlattenable read/write buffers is
that they extend from SkReader32 and SkWriter32, but that
dependency must be abstract if we are to add any other
serialization format.
Review URL: https://codereview.appspot.com/5999045

git-svn-id: http://skia.googlecode.com/svn/trunk@3654 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
94fa43c6255906660c2ff001fb462b6492cbdc07 11-Apr-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkPathStroker::lineTo() for line with length SK_ScalarNearlyZero
Review URL: https://codereview.appspot.com/5992077

git-svn-id: http://skia.googlecode.com/svn/trunk@3650 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
75589257c6ac7fc55a66502b74b8bc09c0212fea 10-Apr-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix miscellaneous compiler warnings from Visual Studio 2010.
Changes serialization path for MorphologyImageFilter, handling of Windows
HRESULTS; otherwise just tweaks tests.



git-svn-id: http://skia.googlecode.com/svn/trunk@3642 2bbb7eff-a529-9590-31e7-b0007b416f81
illPathTest.cpp
athTest.cpp
ointTest.cpp
0e5104c1570de4709e04720e62d80a0ca8970260 10-Apr-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> misc fixes

Submitted on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5988070/



git-svn-id: http://skia.googlecode.com/svn/trunk@3640 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
09042b80d22837c760bb530124aaa67469b19b8f 06-Apr-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing Windows compiler complaints

http://codereview.appspot.com/5991056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3626 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
athTest.cpp
38c3a30a97f807c8516aa41be29884b7a601aa4a 06-Apr-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed issue with Fixed Point scalars in ReadWriteAlphaTest.cpp




git-svn-id: http://skia.googlecode.com/svn/trunk@3623 2bbb7eff-a529-9590-31e7-b0007b416f81
eadWriteAlphaTest.cpp
6995068c5ade6e179d2af82caddb0c1cd6f433b6 06-Apr-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial version of R8 support

http://codereview.appspot.com/5967067/



git-svn-id: http://skia.googlecode.com/svn/trunk@3622 2bbb7eff-a529-9590-31e7-b0007b416f81
eadWriteAlphaTest.cpp
6de0bfc51a4f729a5a4a0fd870e2077f9416635e 30-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> regression unittest for the fix in rev. 3558 (handling nan in antihairpaths)



git-svn-id: http://skia.googlecode.com/svn/trunk@3562 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
d3b9fbbc48c13a1b2a664cf7e01374a44c201f51 28-Mar-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Code changes for ANGLE GL interface. .gyp file changes will be delivered later.

http://codereview.appspot.com/5940046/



git-svn-id: http://skia.googlecode.com/svn/trunk@3519 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
ba28d03e94dc221d6a803bf2a84a420b9159255c 26-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create macro for registering classes for deserialization
Review URL: https://codereview.appspot.com/5909063

git-svn-id: http://skia.googlecode.com/svn/trunk@3494 2bbb7eff-a529-9590-31e7-b0007b416f81
uickRejectTest.cpp
39d4f3a02c21a32b766b13068d5bb65d4c332846 26-Mar-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> restore line accidentally deleted in MatrixTest.cpp in r3491



git-svn-id: http://skia.googlecode.com/svn/trunk@3492 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
9ed2ecd3ac9b4601fccee8b7232b49bb2f9fed2e 26-Mar-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Another fix for fixed point (nan == nan in fixed pt)



git-svn-id: http://skia.googlecode.com/svn/trunk@3491 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
cefc8650905f25bcb3a722dfadfca59651202726 26-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix test to use the flattenable writer class instead of
flattening the object directly.
Review URL: https://codereview.appspot.com/5901059

git-svn-id: http://skia.googlecode.com/svn/trunk@3490 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
8fe84b53a64b5d92f3aabdd8e7fc7b2ee15c0a75 26-Mar-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkMatrix::cheapEqualTo, use in Gr code

Review URL: http://codereview.appspot.com/5865057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3488 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
34f10260adb55301572d4e67414b747c83ee015a 23-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Glyph advances from generateAdvance do not always match generateMetrics results.
http://codereview.appspot.com/5841071/


git-svn-id: http://skia.googlecode.com/svn/trunk@3480 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
6f86c3e0a63271d42473d73175a933f632b19243 22-Mar-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix clang compilation warning

Submitted on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5833045/


git-svn-id: http://skia.googlecode.com/svn/trunk@3472 2bbb7eff-a529-9590-31e7-b0007b416f81
nicodeTest.cpp
e63793a2c8d2871bf7d95195be7b93ff669688d7 21-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream changes from Android repository.
Review URL: https://codereview.appspot.com/5752055

git-svn-id: http://skia.googlecode.com/svn/trunk@3449 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
f8aa18c08d97cdc98a85a0422d3415822a73949c 19-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Compile with c++0x.
http://codereview.appspot.com/5841074/


git-svn-id: http://skia.googlecode.com/svn/trunk@3434 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
calarTest.cpp
0435f161fcb95ee4b2da32a28568eca59b300d16 15-Mar-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Close a couple of minor memory leaks, add a valgrind suppression file to
mute complaints about apparent driver bugs.

http://codereview.appspot.com/5837046/



git-svn-id: http://skia.googlecode.com/svn/trunk@3406 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
itmapCopyTest.cpp
algrind.supp
dc5f76d806dd9299630ba2d05447e49f34be034d 14-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> unittest for kUTF32_TextEncoding



git-svn-id: http://skia.googlecode.com/svn/trunk@3390 2bbb7eff-a529-9590-31e7-b0007b416f81
nicodeTest.cpp
470f07f9a988e8524049346f9ff724a8d21cad63 12-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> promote floats to scalars for the fixed-point build



git-svn-id: http://skia.googlecode.com/svn/trunk@3370 2bbb7eff-a529-9590-31e7-b0007b416f81
lipperTest.cpp
0a0726542ed62f07a2df5e1ac082472006355e66 12-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for rev. 3366 -- clipping antihairlines



git-svn-id: http://skia.googlecode.com/svn/trunk@3367 2bbb7eff-a529-9590-31e7-b0007b416f81
lipperTest.cpp
4c4337291d873c4f27cb7903645863dc65b98a7b 09-Mar-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> If we try to clip against a path and the path only contains a rect, treat it as a clip against a rect.
(Works around a performance issue: JavaScript Canvas2D API only provides canvas.clipPath(), and we don't
optimize path clips nearly as much as we can rects; this shows up more in Ganesh than in the software
rasterizer.)

http://codereview.appspot.com/5795044/



git-svn-id: http://skia.googlecode.com/svn/trunk@3355 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
4f1dae40e24d57d647db01443b8bf2410514b8b5 06-Mar-2012 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 3312)

This CL also includes changes made to Android's copy of
Skia in their J release branch.

Change-Id: Ib2baecf48004951a3ad4a1574cdc38790c814cbc
AClipTest.cpp
ndroid.mk
itmapCopyTest.cpp
anvasTest.cpp
lipCubicTest.cpp
olorTest.cpp
eferredCanvasTest.cpp
rawPathTest.cpp
rawTextTest.cpp
ontHostTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
eometryTest.cpp
athMeasureTest.cpp
athTest.cpp
remulAlphaRoundTripTest.cpp
eadPixelsTest.cpp
est.cpp
est.h
ArrayTest.cpp
ritePixelsTest.cpp
cc46a0ab52de39b66baaf71add92aac34c662f0a 05-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix copy paste error in test ref counting.

TBR=reed@google.com

Review URL: https://codereview.appspot.com/5727066

git-svn-id: http://skia.googlecode.com/svn/trunk@3320 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
c0376febfc855870a0e109d39ee62e82f0ab2139 05-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix name objects containing characters > 0x80 and add a test.

This fixes chrome bug http://crbug.com/115258

Review URL: https://codereview.appspot.com/5726048

git-svn-id: http://skia.googlecode.com/svn/trunk@3319 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
c256cd11e9a04d1488188ed5d40fffbab9b7c0e0 29-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove fragile assert



git-svn-id: http://skia.googlecode.com/svn/trunk@3286 2bbb7eff-a529-9590-31e7-b0007b416f81
eometryTest.cpp
087d5aafb18b88dfc6c6a5dbf59160c8be914e62 29-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix edgecase in chopcubic where we computed duplicate tvalues



git-svn-id: http://skia.googlecode.com/svn/trunk@3285 2bbb7eff-a529-9590-31e7-b0007b416f81
eometryTest.cpp
9b0da23f0af145ffd9795b4b55b9527ac050d0b0 29-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix bug and add test for aaclip when blitV is called



git-svn-id: http://skia.googlecode.com/svn/trunk@3281 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
a907ac3e3e3458fbb5d673c3feafb31fd7647b38 24-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track matrix and clipping state
Removed 'virtual' from a few canvas methods that no longer need it thanks to this change.

BUG=http://code.google.com/p/skia/issues/detail?id=506
TEST=Canvas unit test
REVIEW=http://codereview.appspot.com/5697052/



git-svn-id: http://skia.googlecode.com/svn/trunk@3261 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
0b5b0ce39cea3e0eb83c70278b40fa52b3c5870d 24-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> reverting r3257 because of gm failure.



git-svn-id: http://skia.googlecode.com/svn/trunk@3258 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
421bcc375af0616c37a59b0508957ab54d8f6d12 24-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track matrix and clipping state
Removed 'virtual' from a few canvas methods that no longer need it thanks to this change.

BUG=http://code.google.com/p/skia/issues/detail?id=506
TEST=Canvas unit test
REVIEW=http://codereview.appspot.com/5697052/



git-svn-id: http://skia.googlecode.com/svn/trunk@3256 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
87f982c80833eeebf541becec8e27b96c8c889f7 23-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for crash in SkDeferredCanvas when optional SkPaint argument is NULL

BUG=http://code.google.com/p/skia/issues/detail?id=505
TEST=Canvas unit test
REVIEW=http://codereview.appspot.com/5699054/



git-svn-id: http://skia.googlecode.com/svn/trunk@3246 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
dceecc70a881508998323fd07dba270b07c53d7f 23-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> always allocate (only) the width of the clip for the AA row, since it will
already be clamped to 32K (our impl limit at the moment.)

add unittest to confirm this fix



git-svn-id: http://skia.googlecode.com/svn/trunk@3242 2bbb7eff-a529-9590-31e7-b0007b416f81
rawPathTest.cpp
fbd033d57235cfcfeb83226661da3777429bb4ce 23-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix memory leak in GetTableData() and add unittests for it
Review URL: https://codereview.appspot.com/5693048

git-svn-id: http://skia.googlecode.com/svn/trunk@3239 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
44eedf82702e39b19c44dd9ecc19c047519b4dea 23-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> don't require tableCount>0 since some platform fonts may not support that



git-svn-id: http://skia.googlecode.com/svn/trunk@3238 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
a91e923874ca0565b4f4816b5697dfdcd337b889 23-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GPU device preserves pixel values across read/write/read of unpremul pixel values

Review URL: http://codereview.appspot.com/5695047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3237 2bbb7eff-a529-9590-31e7-b0007b416f81
remulAlphaRoundTripTest.cpp
78525202b8555a1538544aeb3aef5c49aa64b33d 23-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove 'OS/2' table from known-sizes, since its size is not always the same



git-svn-id: http://skia.googlecode.com/svn/trunk@3236 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
dadcfdc92982498344a15ad38cc213504aebd372 23-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing Canvas unit test to correctly verify object flattening in SkPicture

BUG=http://code.google.com/p/skia/issues/detail?id=507
TEST=Canvas unit test
REVIEW=http://codereview.appspot.com/5685082/



git-svn-id: http://skia.googlecode.com/svn/trunk@3235 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
53aab7813ca20360426524361941cf43567fc7ae 23-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix line endings.



git-svn-id: http://skia.googlecode.com/svn/trunk@3234 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
17aa07df01a97ed22858012d4ca625d1e907f992 23-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for FontHost (just tables at the moment)



git-svn-id: http://skia.googlecode.com/svn/trunk@3233 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostTest.cpp
76b9c4b71b8498d59cd6879f8fcdca4b9ffc4bd0 22-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Disabling failing unit test on linux

TBR=reed
TEST=unit test CanvasTest
BUG=http://code.google.com/p/skia/issues/detail?id=507



git-svn-id: http://skia.googlecode.com/svn/trunk@3229 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
1cc8f6f3c48b33430d0e39a4a36601ac0d1de04a 22-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding more unit testing for SkCanvas and derived classes.

BUG=http://code.google.com/p/skia/issues/detail?id=481
REVIEW=http://codereview.appspot.com/5674077/
TEST=unit test CanvasTest



git-svn-id: http://skia.googlecode.com/svn/trunk@3228 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
est.h
b9682d38c1daa597c4acffd93cbd5ba72735a613 21-Feb-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Change append to appendf for call sites with no format arguments.

Original CL: http://codereview.appspot.com/5685062/

Review URL: https://codereview.appspot.com/5686059

git-svn-id: http://skia.googlecode.com/svn/trunk@3225 2bbb7eff-a529-9590-31e7-b0007b416f81
ArrayTest.cpp
543c719a6d2d8f27f125cb5cb02aaa9c2e563bfd 17-Feb-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r3036. This change breaks loading images as
described in Chromium issue 114107. The Chromium break
may be fixed by WebKit patch 78239, at which time
this patch can be reapplied.
Review URL: https://codereview.appspot.com/5675077

git-svn-id: http://skia.googlecode.com/svn/trunk@3219 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
6843ac4bebd00eef9af28f9f069e7c188b466af3 17-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn off test in fixed pt build.



git-svn-id: http://skia.googlecode.com/svn/trunk@3217 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
f0ed80a7ebef9b9c08093390b173e64bf300d7d7 17-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make cross_prod used in SkPath::cheapComputeDirection fallback to double computation when result is 0. Verbal LGTM from reed.




git-svn-id: http://skia.googlecode.com/svn/trunk@3216 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
80cdb9a2139bdc6cb15b5bfb06ed9fc3e33bb39b 16-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> aaclip needs to handle paths with holes
Review URL: https://codereview.appspot.com/5671066

git-svn-id: http://skia.googlecode.com/svn/trunk@3209 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
6bf38b59c9de1cd35cd091cf8766117f4e1f66a0 14-Feb-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move GL-specific include files to their own subdirectory, to better
coexist alongside D3D backend.
Requires gyp change.

http://codereview.appspot.com/5665045/



git-svn-id: http://skia.googlecode.com/svn/trunk@3185 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
est.cpp
b1e218e782261304440199642f1b98e7ba96b525 13-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding missing SkIntToScalar to resolve DeferredCanvas unit test failures with fixed-point build

TBR=reed
TEST=DeferredCanvas unit test



git-svn-id: http://skia.googlecode.com/svn/trunk@3182 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
8f9ecbd3466d4330886b4c23b06e75b468c795ad 13-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding API and unit testing for deferred canvas clearing/purging

REVIEW=http://codereview.appspot.com/5646057/
TEST=DeferredCanvas unit test



git-svn-id: http://skia.googlecode.com/svn/trunk@3181 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
407255664127adb717d2db84072f560e865fc6df 10-Feb-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add two files missed in r3165; most critically the gyp!



git-svn-id: http://skia.googlecode.com/svn/trunk@3166 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
b447d215772a5984dc776a8dc058e0711d566c04 10-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix dumb error of starting loop with 0 instead of 1 that uses shift to increment.



git-svn-id: http://skia.googlecode.com/svn/trunk@3163 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
89ec61e33daa9cbac200d38f7c5bb8b88046999a 10-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GrGLContextInfo

Review URL: http://codereview.appspot.com/5653060/



git-svn-id: http://skia.googlecode.com/svn/trunk@3162 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
b9f026fb219091716debcd57cb13b593faa97ee5 09-Feb-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn on read pixels test for raster backend

Review URL: http://codereview.appspot.com/5643070/



git-svn-id: http://skia.googlecode.com/svn/trunk@3156 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
1f9767c03bad1ef85e5388d84e23e4b5dff4bc1a 07-Feb-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing backing store access in SkDeferredCanvas.
Chromium CL required for rolling skia DEPS past this change is posted here: https://chromiumcodereview.appspot.com/9341003/

BUG=http://code.google.com/p/skia/issues/detail?id=475
REVIEW=http://codereview.appspot.com/5626047/
TEST=DeferredCanvas unit test



git-svn-id: http://skia.googlecode.com/svn/trunk@3147 2bbb7eff-a529-9590-31e7-b0007b416f81
eferredCanvasTest.cpp
1cab2921ab279367f8206cdadc9259d12e603548 18-Jan-2012 Derek Sollenberger <djsollen@google.com> Skia merge (revision 3022)

This CL has companion changes to account for API updates in...
(1) frameworks/base
(2) external/webkit

Change-Id: Ibb989e76e8bd24313849f9631dbef42cdef9eb7d
AClipTest.cpp
ndroid.mk
itSetTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
lurTest.cpp
anvasTest.cpp
lampRangeTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorTest.cpp
ataRefTest.cpp
equeTest.cpp
rawBitmapRectTest.cpp
mptyPathTest.cpp
illPathTest.cpp
lateTest.cpp
LInterfaceValidation.cpp
LProgramsTest.cpp
eometryTest.cpp
nfRectTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
emsetTest.cpp
etaDataTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
ointTest.cpp
uickRejectTest.cpp
eadPixelsTest.cpp
eader32Test.cpp
efDictTest.cpp
egionTest.cpp
calarTest.cpp
haderOpacityTest.cpp
k64Test.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
est.cpp
est.h
estClassDef.h
estSize.cpp
oUnicode.cpp
riangulationTest.cpp
nicodeTest.cpp
tilsTest.cpp
ArrayTest.cpp
ritePixelsTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
ests_files.mk
d414666d18fa9dca1cb310bc66c574aac3d79b72 31-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add additional tests for path direction with multiple pts on y-max



git-svn-id: http://skia.googlecode.com/svn/trunk@3121 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
ac8543ff574cb08ad46bee691d64e31fe31339e5 30-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use contour with global ymax to determine direction



git-svn-id: http://skia.googlecode.com/svn/trunk@3110 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
5546ef2dd9edad601383b85907f677118f857332 30-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> inject a 32767 bounded cliprect before using SuperSampler blitter, to avoid
crash/assert when our run-array is larger than int16_t. Better fix may be to
"tile" the drawing, so we never see a clip that's too wide, and perhaps this
technique can help us avoid disabling AA for large parths (not sure tho).



git-svn-id: http://skia.googlecode.com/svn/trunk@3104 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCubicTest.cpp
13e812c69a9e2b2550871573786fc72b17bdd766 18-Jan-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Interpolate vertical linear gradients for improved quality.
Consolidate interpolation functions, add new faster more accurate dithering
interpolator.



git-svn-id: http://skia.googlecode.com/svn/trunk@3072 2bbb7eff-a529-9590-31e7-b0007b416f81
olorTest.cpp
a6d04d90e2f0a35698a7380cef8d622a8ee0b33f 18-Jan-2012 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing the behavior of SkPathMeasure to reflect changes in SkPath::Iter.
This implementation modifies SkPath::Iter extensively to avoid copying
the points when used to measure path length.

BUG=446
TEST=tests/PathMeasureTest.cpp
Review URL: https://codereview.appspot.com/5533074

git-svn-id: http://skia.googlecode.com/svn/trunk@3062 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
0eb7576c659a165f1d73b6b7ddfd43dc3782f62b 16-Jan-2012 skyostil@google.com <skyostil@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Modify SkBitmap::extractSubset() to respect volatility

The resulting subset bitmap will always have the same volatility flag as the
source bitmap.

BUG=452
Review URL: http://codereview.appspot.com/5544052

git-svn-id: http://skia.googlecode.com/svn/trunk@3039 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
2211b623274e24d0025763cfa855c9eb53d5b900 13-Jan-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Subpixel text 3/8 of a pixel too far to the right.
http://codereview.appspot.com/5502097/


git-svn-id: http://skia.googlecode.com/svn/trunk@3037 2bbb7eff-a529-9590-31e7-b0007b416f81
rawTextTest.cpp
ce7adb580ee7cc608e1049732b1ebb3f0533df4a 13-Jan-2012 skyostil@google.com <skyostil@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Modify SkBitmap::extractSubset() to respect opaqueness

The resulting subset bitmap will always have the same opaqueness flag as the
source bitmap.

BUG=439
Review URL: http://codereview.appspot.com/5534051

git-svn-id: http://skia.googlecode.com/svn/trunk@3036 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
510c6b186d7238bf6d14d92cfd856333ab525bb4 12-Jan-2012 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding new SkPathMeasure tests, defined out for now as they fail.
Review URL: http://codereview.appspot.com/5529078

git-svn-id: http://skia.googlecode.com/svn/trunk@3029 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
d335d1d784167f8b9a4bf8a35e04d8e82d0a9507 12-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> automatically inject a moveTo if we see a close followed by a line/quad/cubic



git-svn-id: http://skia.googlecode.com/svn/trunk@3027 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
cabaf1daf3fdcc151c12d59b05bdbe136c178b3b 11-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reenable direction test, fix handling of degenerate segments in the non-convex case



git-svn-id: http://skia.googlecode.com/svn/trunk@3021 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
dc7a506018719c7b640caf6894fab96d41cdaf81 11-Jan-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkScalar values in ClipperTest.cpp; these were breaking one Windows buildbot

TBR=reed
Review URL: http://codereview.appspot.com/5535052

git-svn-id: http://skia.googlecode.com/svn/trunk@3020 2bbb7eff-a529-9590-31e7-b0007b416f81
lipperTest.cpp
47628314a1511bd6ab996abf126fc90b57be6065 11-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable test until I can fix it



git-svn-id: http://skia.googlecode.com/svn/trunk@3018 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
6da3d1757cfee75c25a86b580834dc49d8b53f05 11-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> improve clamping logic when handling imprecise chopping of cubics
http://code.google.com/p/skia/issues/detail?id=444



git-svn-id: http://skia.googlecode.com/svn/trunk@3011 2bbb7eff-a529-9590-31e7-b0007b416f81
lipperTest.cpp
e354397dd9ac2f0d011fcdcdbae242bb0cfd0fa9 10-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkIntToScalar(10) instead of 10 for parameters (for scalar==fixed)



git-svn-id: http://skia.googlecode.com/svn/trunk@3002 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
3e71a887628ff25c806675366b081c70bb10b74d 10-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add gm for reverseAddPath



git-svn-id: http://skia.googlecode.com/svn/trunk@3001 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
8688e5b7d164a219795944c76e47691aab85c397 09-Jan-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Exclude BGRA readPixel tests on Android until bug 438 is resolved.
Review URL: http://codereview.appspot.com/5522053

git-svn-id: http://skia.googlecode.com/svn/trunk@2987 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
c52b1927c2461b4f3b26bd4d5aa830e5e92d61a3 07-Jan-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for sk_memset16 and sk_memset32



git-svn-id: http://skia.googlecode.com/svn/trunk@2985 2bbb7eff-a529-9590-31e7-b0007b416f81
emsetTest.cpp
cadbcb8e536f89babb4e165bfdca18384e97d582 06-Jan-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Towards enabling -Werror in skia on Linux

Review URL: http://codereview.appspot.com/5516044/



git-svn-id: http://skia.googlecode.com/svn/trunk@2983 2bbb7eff-a529-9590-31e7-b0007b416f81
mptyPathTest.cpp
calarTest.cpp
6630d8d8ea7a897a18e3d950bab9fa40f065804a 04-Jan-2012 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add the ability to iterate through a path without modification. This change is
required by WebKit SVG in order to correctly draw markers and endcaps.

BUG=415
TEST=TestPath in the unit tests
Review URL: http://codereview.appspot.com/5505097

git-svn-id: http://skia.googlecode.com/svn/trunk@2962 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
9ad3599a3a17f124a96979ad5dcba8ad4a107160 03-Jan-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix ToUnicode generation bug.

Code from arthurhsu@chromium.org Original CL: http://codereview.appspot.com/5492061/

BUG=Chromium:104062

Review URL: http://codereview.appspot.com/5498064

git-svn-id: http://skia.googlecode.com/svn/trunk@2944 2bbb7eff-a529-9590-31e7-b0007b416f81
oUnicode.cpp
21e0bc2045395063ae449b3ed691554468f152fd 21-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add move-close-move and move-close-move-close to the "empty" paths to test



git-svn-id: http://skia.googlecode.com/svn/trunk@2921 2bbb7eff-a529-9590-31e7-b0007b416f81
mptyPathTest.cpp
ee068aae552e8cfb3e23f9c972a377e75a07e822 21-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for invariants for empty paths, still need to think about
hairlines in those cases



git-svn-id: http://skia.googlecode.com/svn/trunk@2919 2bbb7eff-a529-9590-31e7-b0007b416f81
mptyPathTest.cpp
419f43348ab6c9226b82490d41c736230ae3bf41 21-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkUnichar_IsVariationSelector()



git-svn-id: http://skia.googlecode.com/svn/trunk@2915 2bbb7eff-a529-9590-31e7-b0007b416f81
nicodeTest.cpp
6c31d9d9b4ea183ec7be29f97e108c8cfb33533b 20-Dec-2011 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing PathTest. It was always broken in the convexity test code due
to a failure to correctly use SkScalar.

git-svn-id: http://skia.googlecode.com/svn/trunk@2904 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
32879498688942b3df0641a21db524e151699a03 20-Dec-2011 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing the build for FIXED tests. PathTest was incorrect using "1" instead of "SK_Scalar1".

git-svn-id: http://skia.googlecode.com/svn/trunk@2902 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
4da06ab3351f2a96f9216d96106db33a77b19644 20-Dec-2011 schenney@chromium.org <schenney@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Modifying SkPath to store all verbs provided by the user, and to give
correct results for all stroke and fill modes even on the various types
of degenerate paths.

The goals of this patch include:
1. Have Skia store all of the verbs implied by path construction methods, even
if those define degenerate paths. The SVG implementation in WebKit, which is
backed by Skia, needs to know about all elements of the path, even degenerate
ones, for the correct drawing of markers and line caps. For example, in SVG you
should be able to draw a scatter plot by specifying a marker for vertices and
then giving a sequence of moveTo commands. Skia will not store the moveTos,
requiring a different storage mechanism.

2. Assuming 1, maintain the current Skia behavior. That is, make Skia robust to
degenerate paths.

3. Fix an existing bug in Skia where a degenerate moveTo-lineTo pair spits out
warnings from rasterization and produces incorrect results in inverse-fill
renderings.

4. Adds extensive testing for degenerate paths and path rendering in general.

To meet these goals, the patch I am proposing will result in minor additional
storage for degenerate paths (a few bytes per degenerate path, only if the user
defines such paths). There is also some additional overhead in the iteration
code, with the path now cleaned to remove degenerate segments as part of the
iteration process. I suspect this will also fix issues with computing normal
vectors to degenerate segments. Benchmarking suggests that this change may
result in slightly (< 1%) slower path drawing due to the checks for
degeneracy. This overhead could be removed (in fact, a significant speedup
could occur) if the results of iterating to clean up the path were cached.
This would cost memory, of course, and quite a bit of it.

BUG=398
TEST=tests/PathTest.cpp
gm/cubicpaths.cpp
gm/degeneratesegments.cpp
gm/movepaths.cpp
gm/linepaths.cpp
gm/quadpaths.cpp
Review URL: http://codereview.appspot.com/5482051

git-svn-id: http://skia.googlecode.com/svn/trunk@2901 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
7c2029367cea5479fa3b74fb0ca2b0297b42b709 14-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add canvas::isDrawingToLayer(), as a fast query for chrome; faster than
setting up a drawiter and counting the layers.



git-svn-id: http://skia.googlecode.com/svn/trunk@2875 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
b6e161937bc890f0aa12ac5e27415d4d260ea6e0 09-Dec-2011 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding isOpaque method to skia shader classes

REVIEW=http://codereview.appspot.com/5451102/
TEST=unit test ShaderOpacity



git-svn-id: http://skia.googlecode.com/svn/trunk@2840 2bbb7eff-a529-9590-31e7-b0007b416f81
haderOpacityTest.cpp
5ae777dcad2c211814f5e9cde803ef6cc96a595f 06-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename sk_float_isNaN to sk_float_isnan to match related functions
add sk_float_isinf returning non-zero if the argument is +/- infinity



git-svn-id: http://skia.googlecode.com/svn/trunk@2813 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
1607863b608b7db6c813228768ed5d72997bbc82 06-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename hasValidCoordinates to isFinite (on SkRect) and reimplement for speed



git-svn-id: http://skia.googlecode.com/svn/trunk@2811 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
61873a59d7f7e2a3ef58af6efe594eb8228a86ec 05-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add sk_float_isfinite to mask platform differences



git-svn-id: http://skia.googlecode.com/svn/trunk@2803 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
d230e3e532dbb0df39453375f9918608d1e71b54 05-Dec-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for isFinite



git-svn-id: http://skia.googlecode.com/svn/trunk@2800 2bbb7eff-a529-9590-31e7-b0007b416f81
calarTest.cpp
b44cd65a53fa016a238e2bd3d01b5434dbc05da3 01-Dec-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Paint == comparison on Android.

The == operator was incorrect because of Androids use of
fGenerationID. This change moves the ID to the end of the
paint struct and omits it from the == comparison.
Review URL: http://codereview.appspot.com/5437098

git-svn-id: http://skia.googlecode.com/svn/trunk@2780 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
37f3ae0b9f31abb62f34f91b17e2eb86e514ae27 28-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for save/restore



git-svn-id: http://skia.googlecode.com/svn/trunk@2751 2bbb7eff-a529-9590-31e7-b0007b416f81
anvasTest.cpp
a052aca410a62228c3f67090d4f771fbbce7ad9e 23-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> more rgn==aaclip tests



git-svn-id: http://skia.googlecode.com/svn/trunk@2744 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
31648eb1cfe19257ec077efebb11ab251bfd25f7 23-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix warnings

Review URL: http://codereview.appspot.com/5433054/


git-svn-id: http://skia.googlecode.com/svn/trunk@2741 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
95b85bd1ba98141c9ec70a4593eaf4671347e472 23-Nov-2011 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add test that aaclip.setRegion creates the same mask as the region
... in prep for optimizatin work on setRegion.



git-svn-id: http://skia.googlecode.com/svn/trunk@2739 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
3d60812865bb034851da777a91413ab584929887 21-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> don't quickReject bitmaps if there is a looper or other possible bounds-modifier
add unittest for the above change



git-svn-id: http://skia.googlecode.com/svn/trunk@2722 2bbb7eff-a529-9590-31e7-b0007b416f81
uickRejectTest.cpp
3565f0fd25afad52b4a9dbb808d877e957475c6c 17-Nov-2011 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for IsMode



git-svn-id: http://skia.googlecode.com/svn/trunk@2704 2bbb7eff-a529-9590-31e7-b0007b416f81
fermodeTest.cpp
b03db4a366d7bdcea095983f4beaf9982e96fc21 16-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix signed/unsigned warning (use size_t in conjunction with SK_ARRAY_COUNT)



git-svn-id: http://skia.googlecode.com/svn/trunk@2702 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
3563c9ee527f524d421964b54d9b09e12ec0bf6b 14-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix autobounds dude to call a custom version of rect.join that doesn't ignore
empty rects (since path.bounds must be the bounds of its control-pts, including
empty subcontours)



git-svn-id: http://skia.googlecode.com/svn/trunk@2679 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
1dcf506a1aa3771d1b36831da2ab3ce9fd6e1900 14-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove GrGpuGLFixed subclass and ES1 support

Review URL: http://codereview.appspot.com/5376094/


git-svn-id: http://skia.googlecode.com/svn/trunk@2678 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
ffdb018dae05f1688c6c036299f8c8a0f28342e5 14-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for bounds (disabled as it fails)



git-svn-id: http://skia.googlecode.com/svn/trunk@2677 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
74b98715a375e5e4863115d681386c9f5ec194f5 11-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Do writepixels alpha-premul using gpu

Review URL: http://codereview.appspot.com/5373064/



git-svn-id: http://skia.googlecode.com/svn/trunk@2668 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
beb7fe1869a0019f5527ebf527eb7855308e0791 11-Nov-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Optimize W-array generation with respect to subsetted fonts and add test.

Testing framework originally from http://codereview.appspot.com/4916044

Review URL: http://codereview.appspot.com/5379041

git-svn-id: http://skia.googlecode.com/svn/trunk@2667 2bbb7eff-a529-9590-31e7-b0007b416f81
ArrayTest.cpp
bbce8b29bd0d30ee0b1155ae72023e779cbdce9b 10-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn off WritePixelsTest in fixed pt build (GPU device known not to work, no plan to fix)




git-svn-id: http://skia.googlecode.com/svn/trunk@2663 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
d58a1cd00b969a7755c375f55cf80f4d49d3047b 10-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add config8888 support to writePixels

Review URL: http://codereview.appspot.com/5374052/



git-svn-id: http://skia.googlecode.com/svn/trunk@2662 2bbb7eff-a529-9590-31e7-b0007b416f81
ritePixelsTest.cpp
a2092aab4bc086cb7f0663775b37341207b22911 10-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix return value in read pixels unit test



git-svn-id: http://skia.googlecode.com/svn/trunk@2656 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
f74ad8c91aef4f328dbcbcebae9e436c00a35140 09-Nov-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Removes warnings generated by gcc and clang.



git-svn-id: http://skia.googlecode.com/svn/trunk@2651 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
8d7e39c835dee9efb8a92285955044408bc87721 09-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add experimental test for blending math (disabled for now)



git-svn-id: http://skia.googlecode.com/svn/trunk@2648 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
c43649962221c348d656d425a3fa9b29c78231d4 07-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> [GPU] Add explicit byte order and PM vs. UPM 8888 configs

Review URL: http://codereview.appspot.com/5347042/



git-svn-id: http://skia.googlecode.com/svn/trunk@2618 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
6850eab42ba4c2a7033a99824b02a2846ce0ef2a 03-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Override 32BPP format in SkCanvas::readPixels

Review URL: http://codereview.appspot.com/5330073/



git-svn-id: http://skia.googlecode.com/svn/trunk@2600 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
c69809745e6496564639e42ef998ad39adf7dfb8 02-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Recommit r2584 with gpu pass of the new ReadPixels test disabled in fixed pt (gpu code doesn't work in general in fixed pt).



git-svn-id: http://skia.googlecode.com/svn/trunk@2586 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ace7bd5623354ffabbd224d5b76550bab159c296 02-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r2584 (new test fails in fixed pt builds)



git-svn-id: http://skia.googlecode.com/svn/trunk@2585 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
1a8ddf0a35bfb6c21a1184f81d2fdd50053acf31 02-Nov-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Changes the SkCanvas::readPixels API. Allows caller to read into prealloced bitmap pixels. Changes how clipping to device bounds is handled.

Review URL: http://codereview.appspot.com/5307077/



git-svn-id: http://skia.googlecode.com/svn/trunk@2584 2bbb7eff-a529-9590-31e7-b0007b416f81
eadPixelsTest.cpp
ab77aafa8cf40cff98ca0b224115db84aafa42be 01-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove tests for copyPixelsFrom (it is not gone)



git-svn-id: http://skia.googlecode.com/svn/trunk@2580 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
74913722bfe5e4b6810545891958e3d8e9c63791 27-Oct-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add NULL GL context implementation. Use in bench (-nullgl) and SampleApp (backspace key)

Review URL: http://codereview.appspot.com/5303080/


git-svn-id: http://skia.googlecode.com/svn/trunk@2545 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
c90419199525141a5b98091f856e359bf9daf5b1 27-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> now we trim the aaclip after building it, to ensure that it has tight bounds
around its (rle compressed) image.



git-svn-id: http://skia.googlecode.com/svn/trunk@2542 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
83a444602ec580a0040713eed588c245b4ae0ee9 27-Oct-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove warnings (trailing \, signed vs unsigned, parenthesization).
Convert some tabs into spaces.



git-svn-id: http://skia.googlecode.com/svn/trunk@2541 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
atrixTest.cpp
d8676d2fd2765094d824a07e1024fc9489c7a59b 26-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for rgn-ops. some disable for now as they don't work (yet)



git-svn-id: http://skia.googlecode.com/svn/trunk@2537 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
91d449ebf895d3c412a051272af3175be6976872 26-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add header to document debug-vs-release, fixed-vs-float



git-svn-id: http://skia.googlecode.com/svn/trunk@2536 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
12e1525306a5bafa284b6df4e82b545b337c6d7c 26-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix new test to work in fixed-point



git-svn-id: http://skia.googlecode.com/svn/trunk@2535 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
209c41511eb0d06f8c19f8fb1fc0393c502a1b18 26-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add initial unittests for aaclip. Fix case where BuilderBlitter skipped the top
few scanlines (of its bounds) and therefore didn't know to trim its bounds back
down. This can happen when the path's bounds are larger than the curve's bounds
(i.e. the control points are outside of the tight-bounds of the shape.)



git-svn-id: http://skia.googlecode.com/svn/trunk@2534 2bbb7eff-a529-9590-31e7-b0007b416f81
AClipTest.cpp
57f5d9854bfc78c347cb587e044fb3950f9ad298 24-Oct-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Recommit r2510 now that mac build bot issue has been fixed.



git-svn-id: http://skia.googlecode.com/svn/trunk@2521 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
est.cpp
045e62d715f5ee9b03deb5af3c750f8318096179 24-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> enable soft clipping (yikes)



git-svn-id: http://skia.googlecode.com/svn/trunk@2515 2bbb7eff-a529-9590-31e7-b0007b416f81
illPathTest.cpp
d92780b5586c27401454bb81a1e7e77018cc79f3 20-Oct-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Temporary revert of r2510. The test that it introduced fails on the Mac build bots. I suspect there is something wrong with the Mac bot machine's GL that is preventing context creation from succeeding. The OpenGL Driver monitor on the machine only shows a software rasterizer. aglChoosePixelFormat seems to fail regardless of input. It may just need a reboot. I'll investigate it more on Monday.



git-svn-id: http://skia.googlecode.com/svn/trunk@2511 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
est.cpp
d47fafe05743d61958397bcf7a4b2bf66d778e1d 20-Oct-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add test that validates GrGLInterfaces

Review URL: http://codereview.appspot.com/5304048/



git-svn-id: http://skia.googlecode.com/svn/trunk@2510 2bbb7eff-a529-9590-31e7-b0007b416f81
LInterfaceValidation.cpp
est.cpp
373a6635b7190b4af4d265fdd4b70f102ec3a6fd 19-Oct-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Virtualize SkGLContext with subclasses SkNativeGLContext and SkMesaGLContext, allow both in gm
Review URL: http://codereview.appspot.com/5307045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2499 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
19f286b6f4ca4c124250caeea7f427c870c64370 18-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for read/writePackedUInt, and fix a bug there.



git-svn-id: http://skia.googlecode.com/svn/trunk@2482 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
e295313f019d36be5303673dd0c58c751e516fdb 13-Oct-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move utils/SkEGLContext to gpu/SkGLContext, some gpu.gyp cleanup, set eol style LF on all gpu files

Review URL: http://codereview.appspot.com/5242056/



git-svn-id: http://skia.googlecode.com/svn/trunk@2474 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
d9f2dea5328c9ab455852f2e4928cca7c71c6b05 12-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update to new api for doAA



git-svn-id: http://skia.googlecode.com/svn/trunk@2463 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
07faed110275048c83a55ae39042da2c9d916108 07-Oct-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Setting perspective in fixed point.
http://codereview.appspot.com/5088043/


git-svn-id: http://skia.googlecode.com/svn/trunk@2435 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
111c19bfeba77113e2fc6a4547e325b9f6741f46 06-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix scalar=fixed for the new tests



git-svn-id: http://skia.googlecode.com/svn/trunk@2427 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
0abb499dafb2550ad81afe11ffede5cab4904575 06-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkAlphaBlend255



git-svn-id: http://skia.googlecode.com/svn/trunk@2426 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
889bd8bd7f604acae0a6303365bc82c06da1e6f3 27-Sep-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkMath.h less visible in public header files.



git-svn-id: http://skia.googlecode.com/svn/trunk@2340 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
olorTest.cpp
athTest.cpp
atrixTest.cpp
athCoverageTest.cpp
53effc5e327749ea47bc0c678cb45246644600b0 21-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for flatten, unflatten and transform



git-svn-id: http://skia.googlecode.com/svn/trunk@2303 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
10296ccb6a63c65b2e60733a929bf15d8bf94309 21-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add segment types query to SkPath (i.e. does it have any quads)



git-svn-id: http://skia.googlecode.com/svn/trunk@2292 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
383963280ddd13030331765fe88d2aefa3e32130 09-Sep-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> [gpu] Remove getMaxStretch for perspective, use mapRadius for perspective path subdiv tol, add test

Review URL: http://codereview.appspot.com/4975063/



git-svn-id: http://skia.googlecode.com/svn/trunk@2246 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
55b5f4bd6a69e70feeaf6018171882ab9cd250ae 07-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkPoint::CanNormalize to unify decisions about when a vector is degenerate



git-svn-id: http://skia.googlecode.com/svn/trunk@2236 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d16872c21fba2898f3b608f9bb33287e9972a312 02-Sep-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix BlurTest to work with fixed point.


git-svn-id: http://skia.googlecode.com/svn/trunk@2212 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
5af16f8d670b3ce1c7644a4737e02e2e2257614e 02-Sep-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reduce size of filter mask.
http://codereview.appspot.com/4965057/

Reduce the size of filter masks, fix HQ blur when clipped, and add tests.


git-svn-id: http://skia.googlecode.com/svn/trunk@2211 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
kia_test.cpp
9dfb7577c4cfc5bf15de9563ac25b2d0d22d9ab4 24-Aug-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Skip test GLPrograms test when GL or Gr context can't be created.

TBR: http://codereview.appspot.com/4946041/



git-svn-id: http://skia.googlecode.com/svn/trunk@2167 2bbb7eff-a529-9590-31e7-b0007b416f81
estClassDef.h
a8e686eb6cadb74039d3b624ece0d3ccb0684dcc 16-Aug-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make program unit test run clean and add it to tests program

Review URL: http://codereview.appspot.com/4898049/


git-svn-id: http://skia.googlecode.com/svn/trunk@2121 2bbb7eff-a529-9590-31e7-b0007b416f81
LProgramsTest.cpp
est.cpp
est.h
estClassDef.h
04c643b7739cf7e618d9996c3fd1514eee4b27c0 09-Aug-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use bfrange to shrink ToUnicode table.

Patch from Arthur Hsu. Original CL: http://codereview.appspot.com/4844043/
BUG=258

Review URL: http://codereview.appspot.com/4808083

git-svn-id: http://skia.googlecode.com/svn/trunk@2075 2bbb7eff-a529-9590-31e7-b0007b416f81
oUnicode.cpp
221db3c3364eb110bc03db78cb09aae51d117b27 28-Jul-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix initialization of variables; eliminates warnings on Linux.



git-svn-id: http://skia.googlecode.com/svn/trunk@1990 2bbb7eff-a529-9590-31e7-b0007b416f81
eometryTest.cpp
athTest.cpp
ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976e 28-Jul-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Automatic update of all copyright notices to reflect new license terms.

I have manually examined all of these diffs and restored a few files that
seem to require manual adjustment.

The following files still need to be modified manually, in a separate CL:

android_sample/SampleApp/AndroidManifest.xml
android_sample/SampleApp/res/layout/layout.xml
android_sample/SampleApp/res/menu/sample.xml
android_sample/SampleApp/res/values/strings.xml
android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java
android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java
experimental/CiCarbonSampleMain.c
experimental/CocoaDebugger/main.m
experimental/FileReaderApp/main.m
experimental/SimpleCocoaApp/main.m
experimental/iOSSampleApp/Shared/SkAlertPrompt.h
experimental/iOSSampleApp/Shared/SkAlertPrompt.m
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig
gpu/src/android/GrGLDefaultInterface_android.cpp
gyp/common.gypi
gyp_skia
include/ports/SkHarfBuzzFont.h
include/views/SkOSWindow_wxwidgets.h
make.bat
make.py
src/opts/memset.arm.S
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
src/ports/SkXMLParser_empty.cpp
src/utils/ios/SkImageDecoder_iOS.mm
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkStream_NSData.mm
tests/FillPathTest.cpp
Review URL: http://codereview.appspot.com/4816058

git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
itSetTest.cpp
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
lurTest.cpp
lampRangeTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
lipperTest.cpp
olorFilterTest.cpp
olorTest.cpp
ataRefTest.cpp
equeTest.cpp
rawBitmapRectTest.cpp
lateTest.cpp
eometryTest.cpp
nfRectTest.cpp
athTest.cpp
atrix44Test.cpp
atrixTest.cpp
etaDataTest.cpp
DFPrimitivesTest.cpp
ackBitsTest.cpp
aintTest.cpp
arsePathTest.cpp
athCoverageTest.cpp
athMeasureTest.cpp
athTest.cpp
ointTest.cpp
eader32Test.cpp
efDictTest.cpp
egionTest.cpp
k64Test.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
est.cpp
est.h
estClassDef.h
estSize.cpp
riangulationTest.cpp
tilsTest.cpp
riter32Test.cpp
fermodeTest.cpp
kia_test.cpp
fd03db0fe9c7a7f72df560b2039f2c3050c2fab9 28-Jul-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Manually update copyright notices in files that defied the automated process
used in http://codereview.appspot.com/4816058/ ('Automatic update of all copyright notices to reflect new license terms.')

Note that the following files have been left alone, because they name
copyright holders outside of Google. Please let me know if we need to update
these files:

experimental/CiCarbonSampleMain.c
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
Review URL: http://codereview.appspot.com/4806054

git-svn-id: http://skia.googlecode.com/svn/trunk@1981 2bbb7eff-a529-9590-31e7-b0007b416f81
illPathTest.cpp
17e66e2d341ab684eec7841fd383af85bb4aa625 27-Jul-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Improve efficiency of glyph id collection during font subsetting.

Patch from Arthur Hsu, original CL: http://codereview.appspot.com/4828044/

Review URL: http://codereview.appspot.com/4798057

git-svn-id: http://skia.googlecode.com/svn/trunk@1978 2bbb7eff-a529-9590-31e7-b0007b416f81
itSetTest.cpp
6fc321a18acc8c6437735007240eefe7054e83b0 27-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for SkConvertQuadToCubic



git-svn-id: http://skia.googlecode.com/svn/trunk@1967 2bbb7eff-a529-9590-31e7-b0007b416f81
eometryTest.cpp
f131694617ce0410eafcb01124459382576bb1d9 26-Jul-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add functionality for isRect() to SkPath.
http://codereview.appspot.com/4807052/

M src/core/SkPath.cpp
M tests/PathTest.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@1964 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d3a094ca346bee7631eb522a2bf46b72f755ef40 26-Jul-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix bug in catalog substitution.

Review URL: http://codereview.appspot.com/4816051

git-svn-id: http://skia.googlecode.com/svn/trunk@1955 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
421d6443fbd3a913dfa32b6492c4a2969bc6314b 20-Jul-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Make stream compression optional on a per device basis.

There are a lot of small pieces to make this change work:
- SkPDFDocument (and SkPDFCatalog) take flags to disable compression (and font embedding - not implemented yet, can disable font subsetting for now).
- SkPDFStream now defers compression until the size/emit step.
- Classes that *had* a stream (because they didn't know the stream size at construction time) now *are* streams to make the substitution work correctly.
- The SkPDFShader implementation got pulled apart into two classes, one that is a SkPDFDict, and one that is a SkPDFStream (making the common ancestor SkPDFObject).
- Added helper methods in SkPDFObject for children that have simple resource lists.
- Added an iterator to SkPDFDict so that a substitute SkPDFStream can get a copy of the stream dictionary.
- Change SkPDFDocument to have a pointer to an SkPDFCatalog to remove a new circular header reference.

Review URL: http://codereview.appspot.com/4700045

git-svn-id: http://skia.googlecode.com/svn/trunk@1911 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
ba7983e55ce15ddcd5534011935178760164fb9d 13-Jul-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build break from 1851.

In fixed point, kMPersp2 is a magic number, not SK_Scalar1.


git-svn-id: http://skia.googlecode.com/svn/trunk@1852 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
1ddd7c39289b7dd18537fdac4b630e378cd78842 13-Jul-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change pdfTransform to asAffine.
http://codereview.appspot.com/4704044/



git-svn-id: http://skia.googlecode.com/svn/trunk@1851 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
b3b8dfa31326c51dab8b5ed569e19ee715582d1b 13-Jul-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix path iter returned pt on close, test path close pt in unit test.

Review URL: http://codereview.appspot.com/4715044/



git-svn-id: http://skia.googlecode.com/svn/trunk@1849 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
47e0a09052eb4c93a4506ebf3c64070fafc3d4b3 08-Jul-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Replace vsnprintf with vsnprintf_s; add code to reproduce issue to StringTest;
fix another Windows test failure.



git-svn-id: http://skia.googlecode.com/svn/trunk@1829 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
2b75f4279a237ceea929ff8ac019f7fbd3ad08b5 07-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add asABlur() to maskfilters, so devices like gpu and pdf can query them.



git-svn-id: http://skia.googlecode.com/svn/trunk@1816 2bbb7eff-a529-9590-31e7-b0007b416f81
lurTest.cpp
2ef12d4bb54312091d644f0ada3639c51c9f6e5a 07-Jul-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Add a concept of a substitute object to the SkPDFCatalog class.

Code by Arthur Hsu, original code review: http://codereview.appspot.com/4650060/

Review URL: http://codereview.appspot.com/4639102

git-svn-id: http://skia.googlecode.com/svn/trunk@1812 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
d3a8c94dfdabb333b12da3ff796d1f558cb06fba 02-Jul-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> A bit set class. Will be used for font subsetting.

Committed on behalf of arthurhsu@chromium.org with a few final nits.

Original CL: http://codereview.appspot.com/4627077

Review URL: http://codereview.appspot.com/4657070

git-svn-id: http://skia.googlecode.com/svn/trunk@1788 2bbb7eff-a529-9590-31e7-b0007b416f81
itSetTest.cpp
ee694724099d9bebf6f5bcd079d3136b5e7ae48a 01-Jul-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove compile warning by removing unnecessary output.



git-svn-id: http://skia.googlecode.com/svn/trunk@1783 2bbb7eff-a529-9590-31e7-b0007b416f81
athCoverageTest.cpp
3a1f6a06cc706b35d9d6086ffbf5135cbf42bf8a 30-Jun-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkStringPrintf helper fucntion + a new unit test for it.



git-svn-id: http://skia.googlecode.com/svn/trunk@1766 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
f65817c3c004b692093b5adf5452c8e407ae7352 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove last vestiges of intentional break



git-svn-id: http://skia.googlecode.com/svn/trunk@1753 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
33250842da687c01bed0bb20106d1fd61c1ba662 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix intentional break



git-svn-id: http://skia.googlecode.com/svn/trunk@1751 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
601d1baa75518db36da6aef7df747ae3e15c771d 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> another intentional break



git-svn-id: http://skia.googlecode.com/svn/trunk@1750 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
3721a7a0531020d52360d65471815d085ca7ef2e 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix intentional break



git-svn-id: http://skia.googlecode.com/svn/trunk@1749 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
2278a7809e340ee299b8666aa0cd86f4144b1017 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> intentional error to exercise buildbot emails



git-svn-id: http://skia.googlecode.com/svn/trunk@1748 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
8a85d0c4938173476d037d7af0ee3b9436a1234e 24-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> replace detach/getStream apis on dynamicwstream with SkData

http://codereview.appspot.com/4657046/



git-svn-id: http://skia.googlecode.com/svn/trunk@1714 2bbb7eff-a529-9590-31e7-b0007b416f81
lateTest.cpp
DFPrimitivesTest.cpp
treamTest.cpp
6f2b44d2ff24dd704aa673ab653371d62c1ac931 24-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add (disabled) tests for common angles



git-svn-id: http://skia.googlecode.com/svn/trunk@1708 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
fc1539a04005b3cc0526db49c8b08754aa8863a6 24-Jun-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Experimental framework for fast quadratic subdivision density computation code.
Lets us test multiple implementations of the code that determines how many
points to divide a quadratic into and guarantee that estimates are within
a factor of two of the conservative computation.



git-svn-id: http://skia.googlecode.com/svn/trunk@1701 2bbb7eff-a529-9590-31e7-b0007b416f81
athCoverageTest.cpp
8d0b5770f8fcfdeb8ad9808e58c49116f14b6190 24-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename public SkDataRef to SkData
rename animator's internal SkData to SkDataInput



git-svn-id: http://skia.googlecode.com/svn/trunk@1697 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
treamTest.cpp
70442a6cf73c9a822df23961f5e16dc3abc18f26 23-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add copyToData() to dyanamicwstream



git-svn-id: http://skia.googlecode.com/svn/trunk@1695 2bbb7eff-a529-9590-31e7-b0007b416f81
treamTest.cpp
0199fa7423f89a129da2b22a488f2c18e2e4727f 23-Jun-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1562)

Change-Id: Ief005abc9eb741ccf5efec3d1f29fe2dfc23103d
ndroid.mk
athTest.cpp
atrix44Test.cpp
athCoverageTest.cpp
eader32Test.cpp
ests_files.mk
d33f75c7becf39bf14aff90f8e3de33206c1a698 15-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move PointTest.cpp out of tests/core into tests/ ; the other arrangement was
"clever" but was causing build problems.



git-svn-id: http://skia.googlecode.com/svn/trunk@1604 2bbb7eff-a529-9590-31e7-b0007b416f81
ointTest.cpp
ore/PointTest.cpp
1fd56dc6e189ea0e94b5df9af959c243573f8883 15-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkPoint::Normalize() for SK_SCALAR_IS_FIXED and add performance warning to its declaration

http://codereview.appspot.com/4582043/



git-svn-id: http://skia.googlecode.com/svn/trunk@1602 2bbb7eff-a529-9590-31e7-b0007b416f81
ore/PointTest.cpp
1622c99150a1d7401118ddcdd85077934a379890 14-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add



git-svn-id: http://skia.googlecode.com/svn/trunk@1589 2bbb7eff-a529-9590-31e7-b0007b416f81
ataRefTest.cpp
baa677b24896b67ecb08fc3b13c4c36953243a7d 14-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> delete all old (non-Gyp) buildfiles



git-svn-id: http://skia.googlecode.com/svn/trunk@1583 2bbb7eff-a529-9590-31e7-b0007b416f81
ests_files.mk
da9fac0aa13d1445f8b58a75d9390638845c814d 13-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add row/col major getters, plus unit-tests



git-svn-id: http://skia.googlecode.com/svn/trunk@1564 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
ests_files.mk
125002a94ccba991d151d226b98f100beb5e4b31 09-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update SkMatrix44



git-svn-id: http://skia.googlecode.com/svn/trunk@1559 2bbb7eff-a529-9590-31e7-b0007b416f81
atrix44Test.cpp
bf083a9a2077e26b3e572aeafd6640156ad68e3b 08-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix windows compile errors in "tests"



git-svn-id: http://skia.googlecode.com/svn/trunk@1547 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
eader32Test.cpp
ddab2276cb09d0c74018af45184ae93138e3230b 08-Jun-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Duplicates code from GrPathUtils to verify that an approximation for the number
of points in a quadratic curve is within +/- 2x the value determined by the
previous expensive method.

Running a similar approximation method on the Guimark2 HTML5 Charting demo drops
the share of time spent in SkPoint::distanceToLineSegmentBetweenSqd() from 4.57%
to under 0.6%, although SkPath::Iter::next(), SkPath::lineTo(), and
GrPathUtils::quadraticPointCount() all increase a bit.

Using a similar approximation method for SampleSlides.cpp produces visually
reasonable results. Without a relevant gm (it looks like gm/pathfill.cpp doesn't
have explicit quadratics?) I'm not sure how to get a better output quality
test.

We could avoid code duplication by:
- have two implementations in GrPathUtils (computedQuadraticPointCount() &
estimatedQuadraticPointCount() are my working titles)
- use a #define to select between them at compile time
- expose both of them in the header file for this test to access



git-svn-id: http://skia.googlecode.com/svn/trunk@1540 2bbb7eff-a529-9590-31e7-b0007b416f81
athCoverageTest.cpp
ests_files.mk
0b15698a8c76bb8abc1b555c1d91892669b4118f 06-Jun-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1510)

This CL includes bug fixes and closely mirrors the version of
Skia used in Chrome M13, which is likely to be our baseline for
ICS.

The CL also adds source files for the SampleApp which will allow
us to execute basic skia tests. The SampleApp requires the
utils/views directory in order to run.

Finally, we have included the PDF backend for Skia in order to
experiment with using it to generate PDF files for certain
applications.

Note: The SampleApp and PDF code are not built as part of libskia.

Change-Id: I1895ccfbd8074e25f19148cc7bd1b4af571fb307
ndroid.mk
lipStackTest.cpp
atrixTest.cpp
DFPrimitivesTest.cpp
athTest.cpp
eader32Test.cpp
tilsTest.cpp
riter32Test.cpp
ests_files.mk
103c036218df4928f99d3d1e109551a3cbb4fb86 23-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pass correct size to read(buffer, ...) tests



git-svn-id: http://skia.googlecode.com/svn/trunk@1398 2bbb7eff-a529-9590-31e7-b0007b416f81
eader32Test.cpp
dde0956375e87027df2fdd80d430dd819c217aac 23-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add cross-process option to gpipe
add unittests for reader32 and writer32



git-svn-id: http://skia.googlecode.com/svn/trunk@1397 2bbb7eff-a529-9590-31e7-b0007b416f81
eader32Test.cpp
riter32Test.cpp
ests_files.mk
bcc56836ea31583bdf593d3c8c069efa0f43139d 20-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> tiny document-only change



git-svn-id: http://skia.googlecode.com/svn/trunk@1391 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
1f75399dced577f467608eadb05ff41de141e4c2 18-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix PathTest for SKIA_SCALAR=fixed
http://codereview.appspot.com/4528083/



git-svn-id: http://skia.googlecode.com/svn/trunk@1371 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
6cc26da383c190d530261b518c89ec2d1c03e826 18-May-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix PDF primitives test for fixed scalars.

110999 is out of range for SkFixed (+/- 32767)

BUG=269

Review URL: http://codereview.appspot.com/4530051

git-svn-id: http://skia.googlecode.com/svn/trunk@1365 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
2047f00e4698f83499ab91911999a65c21a951c9 17-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> get tests closer to passing for SKIA_SCALAR=fixed

http://codereview.appspot.com/4532064/



git-svn-id: http://skia.googlecode.com/svn/trunk@1351 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
atrixTest.cpp
athTest.cpp
35e2e62b55598210f6999fc2ea26ff8f41446ffe 16-May-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1327)

Change-Id: I46f41274d07a3d7bac4728f8841c7f5e89dc9181
ndroid.mk
itmapCopyTest.cpp
lampRangeTest.cpp
lipStackTest.cpp
olorFilterTest.cpp
olorTest.cpp
lateTest.cpp
athTest.cpp
tilsTest.cpp
fermodeTest.cpp
kia_test.cpp
ests_files.mk
b54455e440e66e0b1c30954d226226f49aac26d6 16-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change getConvexity() to now compute it if the value is set to kUnkown.
Change behavior for degenerate paths: now those return kConvex instead of kUnknown



git-svn-id: http://skia.googlecode.com/svn/trunk@1330 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
85b6e399d56d2421980daa432f30910beda41922 15-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> detect more than one loop in computeconvexity



git-svn-id: http://skia.googlecode.com/svn/trunk@1326 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
7c42481c9d3f6c71f78cc1fc1d1cb7ac18df2d1b 15-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> migrate more tests from GrPath.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@1325 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
04863fa14a44ddf85acbc6268690ebc3f0d1d6db 15-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add Convexity enum to SkPath



git-svn-id: http://skia.googlecode.com/svn/trunk@1324 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
a8fd79d407ce056d32316932dce8b898d932ae6d 13-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> make tests return nonzero if failing

http://codereview.appspot.com/4545042/



git-svn-id: http://skia.googlecode.com/svn/trunk@1323 2bbb7eff-a529-9590-31e7-b0007b416f81
kia_test.cpp
6e7a7b3b1d0a168d668f120832d6cc1946dc9ef6 13-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Another tiny comment-only change to trigger buildbot



git-svn-id: http://skia.googlecode.com/svn/trunk@1322 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
4b8117db708981c84fb5819f0f03b74d2aa1229b 13-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Tiny comment-only change to trigger buildbot



git-svn-id: http://skia.googlecode.com/svn/trunk@1321 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
189520db79e09da6281dabee959397cc48c72e3d 12-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix intentional breakage in previous commit



git-svn-id: http://skia.googlecode.com/svn/trunk@1313 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
262d5f78c0fe9523facab0a56346042de21415ef 12-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Intentional breakage to test notifications, will fix quickly



git-svn-id: http://skia.googlecode.com/svn/trunk@1312 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
540fb22fe9fd4680e0e5730c18a26e704bcb39f0 12-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Tiny comment-only change to trigger update



git-svn-id: http://skia.googlecode.com/svn/trunk@1311 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
67d78b18d300e7efae36ab30bebbc83dcfc1ea79 11-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix my intentional break.



git-svn-id: http://skia.googlecode.com/svn/trunk@1307 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
76c5847bcd8eed1ab223f018db3d52ce008bf944 11-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Intentionally break tests, will fix quickly.



git-svn-id: http://skia.googlecode.com/svn/trunk@1305 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
f28b78b0bb5b04f4237fd05eac59bb3b28ba459f 11-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Another comment-only change to test notifications



git-svn-id: http://skia.googlecode.com/svn/trunk@1304 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
823c973d3df908aa96a8902f8c90990a9ecff18a 11-May-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Tiny comment-only change to test notifications



git-svn-id: http://skia.googlecode.com/svn/trunk@1302 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
75595d939230506b5819f9ceed4a8b22a5661921 03-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update



git-svn-id: http://skia.googlecode.com/svn/trunk@1232 2bbb7eff-a529-9590-31e7-b0007b416f81
olorTest.cpp
1e1c36f4f89ad39e1d248edb745919e493242c68 03-May-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add comparison and assignment to SkClipStack (and fix an optimization bug).

Review URL: http://codereview.appspot.com/4423085

git-svn-id: http://skia.googlecode.com/svn/trunk@1230 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
69731aa60cb06bcdc06ca281565d866fee74ffab 26-Apr-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Another tiny comment-only change to trigger svn update



git-svn-id: http://skia.googlecode.com/svn/trunk@1191 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
9395a7e696c847cac231809db55d09813fad6f3e 26-Apr-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Tiny comment-only change to trigger SVN update in buildbot



git-svn-id: http://skia.googlecode.com/svn/trunk@1184 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
83acbe0a789fe045f6a8053f0c533e6de8df9e58 22-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for premultiplycolor



git-svn-id: http://skia.googlecode.com/svn/trunk@1167 2bbb7eff-a529-9590-31e7-b0007b416f81
olorTest.cpp
ests_files.mk
e05aec3b45b714ebe7f5b3851d0d87bc5ba54374 20-Apr-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> tiny test commit
http://codereview.appspot.com/4432053



git-svn-id: http://skia.googlecode.com/svn/trunk@1163 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
13659f1f8d2e705c565203d45870b1afcd47cf98 18-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> handle overflow
note: gradient caller doesn't so we can still draw wrong when the caller
converts its initial fx from float->fixed. Perhaps SkClampRange should offer
a float interface as well.



git-svn-id: http://skia.googlecode.com/svn/trunk@1149 2bbb7eff-a529-9590-31e7-b0007b416f81
lampRangeTest.cpp
63c1ad82fc4232daff1b686cc78bba4c6a42916d 18-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add fFx1 field, returning where to start the iterator for fCount1 range
add unittest



git-svn-id: http://skia.googlecode.com/svn/trunk@1145 2bbb7eff-a529-9590-31e7-b0007b416f81
lampRangeTest.cpp
ests_files.mk
fb0b0edd86d71bb423fa921eaac1e2071602115c 15-Apr-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] If the clip is empty, we shouldn't bother actually drawing anything.

Plus, fix ifdef for flate test.

Review URL: http://codereview.appspot.com/4420041

git-svn-id: http://skia.googlecode.com/svn/trunk@1141 2bbb7eff-a529-9590-31e7-b0007b416f81
lateTest.cpp
87b8e645865f9633f410c02252a0fd3feb18f09b 14-Apr-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1116)

There is a companion change in external/webkit

Change-Id: I1c4110e7520bbef3f4e5f9551adb7ec79ac1e3ed
ndroid.mk
rawBitmapRectTest.cpp
athTest.cpp
etaDataTest.cpp
ests_files.mk
43c50c8c77df82c5cffb55cae2d386e59802b88f 14-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add reflection asColorMode to SkColorFilter (for gpu)



git-svn-id: http://skia.googlecode.com/svn/trunk@1126 2bbb7eff-a529-9590-31e7-b0007b416f81
olorFilterTest.cpp
ests_files.mk
c0d4aa2088a0788f9df221497945d2ba1b342f44 13-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix asMode() to always succeed if the xfermode was built from a Mode
update dox to reflect this
update test



git-svn-id: http://skia.googlecode.com/svn/trunk@1121 2bbb7eff-a529-9590-31e7-b0007b416f81
fermodeTest.cpp
772813afa62706bd97024430b4505afe4258687a 31-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add code to test different premul techniques (disabled right now)



git-svn-id: http://skia.googlecode.com/svn/trunk@1030 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
e733071abeb9cce9f524f5a85851bc7fbb8d867b 30-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add refcnt helper to metadata
add unittests for metadata



git-svn-id: http://skia.googlecode.com/svn/trunk@1019 2bbb7eff-a529-9590-31e7-b0007b416f81
etaDataTest.cpp
ests_files.mk
137a4ca42423bbb6d683067ea544c9a48f18f06c 17-Mar-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 950)

This merge will allow us to now import the sample app
infrastructure in skia to do on device measurements.

Change-Id: Idcab6b1524f371521717cde61a6e98a12d897e6b
ests_files.mk
2ade0863c3af14d274561cc7cb6e628bb9862761 17-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> abort drawing if srcRect is outside of the bitmap bounds



git-svn-id: http://skia.googlecode.com/svn/trunk@951 2bbb7eff-a529-9590-31e7-b0007b416f81
rawBitmapRectTest.cpp
ests_files.mk
05b6b4d746867a9fb02e14edfe1bf3685abeb813 14-Mar-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 922)

Change-Id: I7ed57d10905d8bad6486a4d7410165eec1cc2b4f
ndroid.mk
itmapCopyTest.cpp
itmapGetColorTest.cpp
litRowTest.cpp
lipCubicTest.cpp
lipStackTest.cpp
equeTest.cpp
illPathTest.cpp
lateTest.cpp
nfRectTest.cpp
athTest.cpp
atrixTest.cpp
DFPrimitivesTest.cpp
aintTest.cpp
athTest.cpp
efDictTest.cpp
egionTest.cpp
tringTest.cpp
estSize.cpp
tilsTest.cpp
fermodeTest.cpp
ddbf4c85dece1bef3b6c97219187a6b616b66346 08-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused methods from SkRefPtr, as a check-point for better understanding
what we want to do with this class.



git-svn-id: http://skia.googlecode.com/svn/trunk@903 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
094316bd284372c2a3d8ef02eec589901e503c59 04-Mar-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Restrict scalars to the range that PDF understands.

* Add a config flag to ignore the restrictions
* Apply restriction to both SkPDFScalar and scalars used in content streams.
* +/- 32,767 for the integer part.
* +/1 1/65536 for the fraction part.

Review URL: http://codereview.appspot.com/4240050

git-svn-id: http://skia.googlecode.com/svn/trunk@882 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
8072e4fdc8261b1ca8937aa5c31db967280eae2a 01-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> bump SkStrAppendScalar_MaxSize to 14 to accomodate the largest string now that
scalar->string uses %.8g. Floats have at most 8 significant digits, plus we add
more space for sign, decimal point and exponent.

add tests to check these limits.



git-svn-id: http://skia.googlecode.com/svn/trunk@872 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
fa06e528035dd9c4d01c1d1e17e9df1cfe99b855 28-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use sprintf to generate float->string for SkString routines, removing the
worry of first converting the scalar to a fixed.



git-svn-id: http://skia.googlecode.com/svn/trunk@865 2bbb7eff-a529-9590-31e7-b0007b416f81
tringTest.cpp
f4888c4b45b5be3d0614b52ec764b16ea6b4c46d 25-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add simple test for SkBitmap::getColor()



git-svn-id: http://skia.googlecode.com/svn/trunk@859 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapGetColorTest.cpp
ests_files.mk
a67573e25faa81ea65e6fc368f66d3f0c0a5f189 25-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> http://codereview.appspot.com/4233041/

Add templated version of SkAutoTUnref.
Add unittests for it.
Remove unused helper apis on SkAutoUnref.



git-svn-id: http://skia.googlecode.com/svn/trunk@858 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
40528743dbb9ce7f39f093e0cdc47849ac8887cf 07-Jan-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 808)

This merge has companion changes in the following projects in order
to be compatible with changes to skia interfaces and practices:

1. /frameworks/base
2. /external/webkit

Change-Id: I54092971305579e81a8fdb27bbe04ec340792e3b
est.cpp
bdee9fc778d4387d805d717f2cd7fc7074991fdb 22-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for SkClipStack



git-svn-id: http://skia.googlecode.com/svn/trunk@828 2bbb7eff-a529-9590-31e7-b0007b416f81
lipStackTest.cpp
ests_files.mk
f9e71320758a4d3a94b58676abad7534d0b160bf 22-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for pushing on back as well as front



git-svn-id: http://skia.googlecode.com/svn/trunk@827 2bbb7eff-a529-9590-31e7-b0007b416f81
equeTest.cpp
4c09d5cd4b9e6f0be1352f62288efdedc1bc3de3 22-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename SkDeque::Iter to SkDeque::F2BIter, since it runs front-to-back (in preparation
for another iter that runs back-to-front (B2FIter).

add unittest for Deque



git-svn-id: http://skia.googlecode.com/svn/trunk@821 2bbb7eff-a529-9590-31e7-b0007b416f81
equeTest.cpp
ests_files.mk
d41344553163085bfcfaf7d5882c6028934f8e3b 09-Feb-2011 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update to work correctly for scalar == fixed or float



git-svn-id: http://skia.googlecode.com/svn/trunk@780 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
lipCubicTest.cpp
nfRectTest.cpp
athTest.cpp
atrixTest.cpp
aintTest.cpp
077910e20cda41d7981084fbd047a108894bc8df 08-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkScalarIsFinite(), and use it for a more portable impl of SkRect::isValidCoords()



git-svn-id: http://skia.googlecode.com/svn/trunk@775 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
48543277728fdf66b993f17421f65fba532a23a2 08-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Add support for xfermodes / blend modes.

- Change SkGraphicState to track and set the blend mode (xfermode) for modes built in to PDF (non porter duff modes + src over).
- Add SkXfermode::asMode() to retrieve xfermode as an enum for non porter duff modes.
- Move SkXfermode.cpp around a bit to support asMode() -- Generally move utility functions toward the top of the file.
- Make SkPDFFormXObject an isolated transparency group, as it used for saveLayer, which draws on transparent, not the device background.
- Set the graphic state in drawDevice and drawBitmap in order to get the right xfermode and alpha.

Review URL: http://codereview.appspot.com/4131043

git-svn-id: http://skia.googlecode.com/svn/trunk@774 2bbb7eff-a529-9590-31e7-b0007b416f81
fermodeTest.cpp
ests_files.mk
62047cf1980861234e7367a225928b84ce492c68 07-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> clear the convex-hint in reset() and rewind(), to match its state in a newly
created path.

todo: convexity perhaps should be tristate: yes, no, unknown



git-svn-id: http://skia.googlecode.com/svn/trunk@768 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
534240f6058773cc2366b8310ed5452286a6dfff 07-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> hide divide-by-zero from the compiler, to avoid the warning



git-svn-id: http://skia.googlecode.com/svn/trunk@766 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
ff1ec2f1a8d417236f36d1396182538967e68e1a 07-Feb-2011 wjmaclean@chromium.org <wjmaclean@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add unit test for SkRect::hasValidCoordinates().

git-svn-id: http://skia.googlecode.com/svn/trunk@765 2bbb7eff-a529-9590-31e7-b0007b416f81
nfRectTest.cpp
ests_files.mk
82065d667f64e232bcde2ad849756a6096fcbe6f 07-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkRefCnt safeRef() and safeUnref(), and replace the call-sites with
SkSafeRef() and SkSafeUnref().

This is basically a bug waiting to happen. An optimizing compiler can remove
checks for null on "this" if it chooses. However, SkRefCnt::safeRef() relies on
precisely this check...

void SkRefCnt::safeRef() {
if (this) {
this->ref();
}
}

Since a compiler might skip the if-clause, it breaks the intention of this
method, hence its removal.

static inline void SkSafeRef(SkRefCnt* obj) {
if (obj) {
obj->ref();
}
}

This form is not ignored by an optimizing compile, so we use it instead.




git-svn-id: http://skia.googlecode.com/svn/trunk@762 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
3636ed558fb2af5a48a9634efec55fd8a87c88d7 26-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> embed a refdict inside SkDevice
udate unittests to test refdict's destructor



git-svn-id: http://skia.googlecode.com/svn/trunk@731 2bbb7eff-a529-9590-31e7-b0007b416f81
efDictTest.cpp
0e190d0e126991cfba4bc7415c1911761d7be87b 26-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add refdict class, for holding a dictionary of reference-counted objects
-- experimental



git-svn-id: http://skia.googlecode.com/svn/trunk@730 2bbb7eff-a529-9590-31e7-b0007b416f81
efDictTest.cpp
ests_files.mk
2a22e10ab2946c5590cd2a258427ce3ccfca9bfa 25-Jan-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add Truetype and Type 1 font embedding support

Sorry this is such a large CL. It was very exploratory for me to make this
work.

- Add an interface to SkFontHost to retrieve font information and provide NULL implementations on all platforms except Linux.
- Segment large Type 1 fonts into fonts with shared resources with 255 glyphs each.
- Convert the various Type 1 formats to the form PDF wants.
- Update font as we draw text instead of as part of the graphical state.
- Remove built-in font support, we can't really use it.

Other changes I can pull out to a separate CL if you like.

- Add SkTScopedPtr class.
- Fix double free of resources.
- Fix bug in resource unique-ifying code.
- Don't print anything for any empty clip path.
- Fix copy paste error - MiterLimit.
- Fix sign extension bug in SkPDFString
- Fix FlateTest rename that was missed on a previous commit.

Review URL: http://codereview.appspot.com/4082042

git-svn-id: http://skia.googlecode.com/svn/trunk@728 2bbb7eff-a529-9590-31e7-b0007b416f81
lateTest.cpp
9ce6e7524899380d18960b06e8002df01142580c 10-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> init src either opaquely (e.g. white), or with a valid ctable index (e.g. 0)



git-svn-id: http://skia.googlecode.com/svn/trunk@680 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
1fcd51e6b2a210a37b9b9c2cfb82e1be7196e42a 05-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add template macro to "safely" perform casts w/o breaking strict-aliasing
fix aliasing warnings



git-svn-id: http://skia.googlecode.com/svn/trunk@674 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
ea8509cd3b1771b36054313d3ccd56679df56044 22-Dec-2010 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete test



git-svn-id: http://skia.googlecode.com/svn/trunk@648 2bbb7eff-a529-9590-31e7-b0007b416f81
ests_files.mk
ec7a30cc8688923e0ccfff4c8f81c5e577c4c9ab 07-Dec-2010 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream mulDiv255Ceil() from WebKit to the skia repository.

(Patch by Noel Gordon (noel.gordon@gmail.com))

Review URL: http://codereview.appspot.com/3466042



git-svn-id: http://skia.googlecode.com/svn/trunk@632 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
8cfdf01ff953b47fdd5c29ebd54fea8a7a9be83e 06-Dec-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Correctly handle SkPath::kInverseWinding_FillType

Fix for http://code.google.com/p/skia/issues/detail?id=87

Even when SkPath::kInverseWinding_FillType is given, Skia left some
lines not filled(cleared) in one case.

Patch-by: morrita

http://codereview.appspot.com/3443041

git-svn-id: http://skia.googlecode.com/svn/trunk@630 2bbb7eff-a529-9590-31e7-b0007b416f81
illPathTest.cpp
ests_files.mk
ee34e35c8cefb5b384b34e4eb5ef8cb82774e5a0 02-Dec-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add flate compression test and fix bugs.

Review URL: http://codereview.appspot.com/3393041

git-svn-id: http://skia.googlecode.com/svn/trunk@628 2bbb7eff-a529-9590-31e7-b0007b416f81
lateTest.cpp
ests_files.mk
86bff1f008308267c4ff75456b202a9cf60c6193 16-Nov-2010 wjmaclean@chromium.org <wjmaclean@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add safe size/copy functions to Skia.

This patch adds four methods to SkBitmap. There are two functions to return
"safe size", defined as the number of pixels from the value returned by
getPixels() to the end of the allocated buffer.

There is one version of fillPixels() to copy the bitmap instance into an
external buffer (with specified size, and using specified stride), and another
fillPixels() to copy from an external buffer to the instance bitmap. In the
latter case the specified height, width and pixel format must match that used by
the bitmap instance, although the specified stride may be any value at least as
large as the minimum stride for the specified geometry. It is assumed that the
external buffer is of size at least (height - 1)*stride + width *
bytesPerPixel.

Both fillPixels() functions return false if the copy is not possible with the
specified parameters.

Review URL: http://codereview.appspot.com/2837041/

git-svn-id: http://skia.googlecode.com/svn/trunk@625 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
9b49dc0db8254e3dcdc2de4a1e0add4f8a7ac5a8 21-Oct-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> First pieces of SkPDFDevice. Supports:

Matrix transforms.
Rendering bitmaps.
Basic paint parameters.
Rendering rectangles, points, lines, polygons.
Render a paint to the page.

Review URL: http://codereview.appspot.com/2584041

git-svn-id: http://skia.googlecode.com/svn/trunk@614 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
d877fdbb6e64692285c3e6532d88b9458f65b3cd 13-Oct-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> High level pdf classes and pdf specific interface.

The guts of the implementation will be in SkPDFDevice and below. This is a first implementation of everything above that point.

Review URL: http://codereview.appspot.com/2342043

git-svn-id: http://skia.googlecode.com/svn/trunk@602 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
tringTest.cpp
f66025d59ab4c8c4439fabf6ad89ddf35a19d1fd 02-Oct-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Address senorblanco's comments on r600.

Don't inline constructors and destructors.
Include license in test file.
A few nits
Also, cleanup a couple compile warnings.

Review URL: http://codereview.appspot.com/2279043

git-svn-id: http://skia.googlecode.com/svn/trunk@601 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
8459d4e5e32608ec6da3f2b81731aaeb7b038843 25-Sep-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial PDF backend commit: directories, build rules, primitives

This change establishes and tests the building blocks of the PDF file format.
For now, PDF code is not compiled by default.

Review URL: http://codereview.appspot.com/1950044

git-svn-id: http://skia.googlecode.com/svn/trunk@600 2bbb7eff-a529-9590-31e7-b0007b416f81
DFPrimitivesTest.cpp
097a3513535ad854c1b049c32c080ec875ab1411 13-Jul-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkRegion::setRects(), and its unit tests



git-svn-id: http://skia.googlecode.com/svn/trunk@588 2bbb7eff-a529-9590-31e7-b0007b416f81
egionTest.cpp
ests_files.mk
f59799139bacd300bf5251a1ca4e6b2ad3196457 15-Jun-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename round, ceil, etc. to avoid some platform macros



git-svn-id: http://skia.googlecode.com/svn/trunk@577 2bbb7eff-a529-9590-31e7-b0007b416f81
estSize.cpp
b00cd7258c5ccf856c0dc72840e082306251b278 16-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkRefPtr class (for testing at the moment)



git-svn-id: http://skia.googlecode.com/svn/trunk@555 2bbb7eff-a529-9590-31e7-b0007b416f81
tilsTest.cpp
4c1037238c8ebcef8c75b5d43730ed308a11102c 14-Apr-2010 Mike Reed <reed@google.com> refresh from trunk

Change-Id: I0175ec7482f8cf85d25165da360a5352979fd7a0
athTest.cpp
c846ede6a08d02522c3b58afc29a3d55150dbf83 13-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix build for SK_SCALAR_IS_FIXED



git-svn-id: http://skia.googlecode.com/svn/trunk@547 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d2d74d6d9f6bc7c5a88dd7e4e6087d482bd103dd 16-Mar-2010 Mike Reed <reed@google.com> refresh from skia/trunk

Change-Id: Ie6e18f698c2efc66110146af41afdb7cac5d8bd5
litRowTest.cpp
9f8f48e9e4a75f2b15bd5d6f8cac728f5e0af0ce 15-Mar-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update blitrow test to exercise different widths for blitrow



git-svn-id: http://skia.googlecode.com/svn/trunk@530 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
3c1a5cbb65fd9aa63ad4cde7f4a9a0e02a50eb61 10-Mar-2010 Doug Kwan <dougkwan@google.com> Add missing library in command line to the linker. Currently this library is
included implicitly via inter-library dependency. The library is also used
by the main executable.

Change-Id: Ib5562dbc481af6d95823c97e63355037e0049f7e
ndroid.mk
8e4c93b04cdaa8caeba6b76d612fb2dd58a57a61 09-Mar-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable 32A->565 + alpha for now, until it handles src-alpha==0 as a noop



git-svn-id: http://skia.googlecode.com/svn/trunk@525 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
215473cea1702d8acc0316da3e5a9bf4ce0130ef 09-Mar-2010 Mike Reed <reed@google.com> disable neon-opt for 32A->565 + alpha blend since it doesn't correctly treat
src-alpha == 0 as a no-op.

update unittests to measure this

Change-Id: If4d61ac5f7ff3d7fc27cbc3f242dbdf7ff4e76be
http://b/issue?id=2333376
ndroid.mk
itmapCopyTest.cpp
litRowTest.cpp
lipperTest.cpp
aintTest.cpp
arsePathTest.cpp
estSize.cpp
kia_test.cpp
1db89dc9a5ffa52e2f4206e9a52b334451c37465 08-Mar-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update tests for blitrow



git-svn-id: http://skia.googlecode.com/svn/trunk@524 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
kia_test.cpp
estmain.cpp
ests_files.mk
78cd10529b0a1e5cb987972a19234ad2d13442aa 08-Mar-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests for blitting all opaque or all transparent (test opts)



git-svn-id: http://skia.googlecode.com/svn/trunk@523 2bbb7eff-a529-9590-31e7-b0007b416f81
litRowTest.cpp
ests_files.mk
6b79d6ada02fb549f79a1f7ca5efa222be37dee5 11-Feb-2010 Mike Reed <reed@google.com> refresh from trunk: add static Make for SkSize
athTest.cpp
60bc6d5cb0af7cef0e49cc35f28f36f89b10853e 11-Feb-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add Make to SkTSize



git-svn-id: http://skia.googlecode.com/svn/trunk@497 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
1c980e0d7772f05f570ae0227d91635f017c2227 09-Feb-2010 Mike Reed <reed@google.com> refresh from skia/trunk
athTest.cpp
f0ad0864af632736819b9f3f34dbba488c73e3af 09-Feb-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for copysign



git-svn-id: http://skia.googlecode.com/svn/trunk@496 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d0a529d0280dae3a1f0a700870cfb4c3b95745b2 08-Jan-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix memory leak



git-svn-id: http://skia.googlecode.com/svn/trunk@471 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
a3d901099d7d295cd7d9df4114e874d9ccfff447 30-Nov-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for IntersectLine, used by hairlines



git-svn-id: http://skia.googlecode.com/svn/trunk@447 2bbb7eff-a529-9590-31e7-b0007b416f81
lipperTest.cpp
ests_files.mk
8e048c19870a898cecdde3b3c0d2d512e6f372c0 20-Nov-2009 Mike Reed <reed@google.com> new edgelist builder that chops segments into clip-sized coordinates, to avoid overflows

The change is conditional at the moment inside SkScan_Path.cpp, USE_NEW_BUILDER.

This chopping is meant to only pass in reasonable floats to the edgelist, so that we never
overflow when converting to fixed-point. It also has the side-effect of speeding up edges
to the left/right of the clip, since those become vertical lines, which are faster to
walk over than the original curve segment.

Future optimizations: throw away segments to the right of the clip, and tweak the edgelist
walker to not require an explicit matching right-edge for the current run.
athTest.cpp
ackBitsTest.cpp
e72fee513a5f903d6aa17066d2f3b79ac31f05de 16-Nov-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add onSendClickToChildren to views, so a view can capture all clicks.
speedup some of the unittests that were too slow
minor cleanup in SkScan_Path, in prep for larger changes



git-svn-id: http://skia.googlecode.com/svn/trunk@426 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
ackBitsTest.cpp
cafc9f9e80e30fa75ad8a952e7a290e72f211ce7 22-Aug-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fixes around isOpaque and dithering

- copyTo() now preserves isOpaqueness, and BitmapCopyTest tests it
- bitmap shader doesn't claim to have shadespan16 if dithering is on, since its
sampler doesn't auto-dither (note that gradients do auto-dither in their
16bit sampler)
- blitter setup just relies on the shader to report if its 16bit sampler can be
called (allowing gradients to say yes regardless of dither, but bitmaps to say
no if dithering is on)



git-svn-id: http://skia.googlecode.com/svn/trunk@331 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
bc22683e2ed4aa3439c6edd3dc1e261c399c023e 10-Jul-2009 Mike Reed <reed@google.com> rename libsgl/libcorecg to libskia
ndroid.mk
a8c52de60de1d2471206b3c81e9243e2c76f2edb 29-Jun-2009 Mike Reed <reed@google.com> refresh from trunk: shape flattening, bzero
atrixTest.cpp
est.cpp
4516f4786f5dda1b86a8f825b9e8e910d9c2363c 29-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use sk_bzero instead of bzero, since it isn't always available.



git-svn-id: http://skia.googlecode.com/svn/trunk@244 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
4b7577b042966657c776fd95c67f9363af57945f 29-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for matrix::flatten
define constant for max value flatten/unflatten can return (so clients can put
the buffer on the stack)



git-svn-id: http://skia.googlecode.com/svn/trunk@243 2bbb7eff-a529-9590-31e7-b0007b416f81
atrixTest.cpp
a0f5d1546d499ef0cd7dbfba9a866ae5a27e1541 22-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move xfermode modes from porterduff into xfermode itself



git-svn-id: http://skia.googlecode.com/svn/trunk@232 2bbb7eff-a529-9590-31e7-b0007b416f81
aintTest.cpp
ests_files.mk
8015dd83ae37147bb630d4751030868051ad0cae 21-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> almost there on gm (need to fix image writes/reads/compares)
move SkAutoGraphics into SkGraphics.h
add [] operators to SkString



git-svn-id: http://skia.googlecode.com/svn/trunk@228 2bbb7eff-a529-9590-31e7-b0007b416f81
estmain.cpp
bbff1d507aa3f470139e2df409e94074a2f9425f 05-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkParsePath to go to/from SVG strings (e.g. "M0,0 L10,20")



git-svn-id: http://skia.googlecode.com/svn/trunk@203 2bbb7eff-a529-9590-31e7-b0007b416f81
arsePathTest.cpp
ests_files.mk
79377cbceeea970b663e7934d7cb1f27bb223d98 05-Jun-2009 Mike Reed <reed@google.com> refresh from skia
add isConvex to paths
cache bitmap in gradients for opengl texture
64-bit fixes in views
dumpcanvas now recurses on pictures
athTest.cpp
6b82d1adc6a4726e36674e468ff1157e0b75373f 03-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add isConvex() hit to SkPath, to be used to speed up fills and opengl
set linewidth in gldevice for hair rects
remove some cruft from samples
add more gl-unimpl messages



git-svn-id: http://skia.googlecode.com/svn/trunk@199 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
d5bf0ecf31f33fb31763995e3c8bfab69dc2457f 21-May-2009 Wei-Ta Chen <weita@google.com> Adapting Skia's tests to the native test framework.
ndroid.mk
kia_test.cpp
estmain.cpp
6a5a2667a7cb2a2ccbb8cc19fe1d5e9ee28bb1d3 08-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkSize for dimensions



git-svn-id: http://skia.googlecode.com/svn/trunk@172 2bbb7eff-a529-9590-31e7-b0007b416f81
estSize.cpp
fbaa88d9695347299321cbce2bf803726999fb58 06-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add canCopyTo(), to preflight if copyTo can succeed. update unittests for it



git-svn-id: http://skia.googlecode.com/svn/trunk@169 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
311c82db3115fc6810855cbcc42a6bc6fbd48265 06-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix copyTo to only copy the minimum pixels per row, and to lock the src before
trying to access its colorTable. Update unittest for copyTo. Add sample for
using a mask to clip a layer.



git-svn-id: http://skia.googlecode.com/svn/trunk@168 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
f9ab99aaade8c451c0e9309b4c61a448373019e3 03-May-2009 weita@google.com <weita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow copying an Index8 bitmap when srcConfig and dstConfig are both
Index8.

Also, change the logic of SkBitmap.copyTo() to do memcpy() if srcConfig
and dstConfig are the same.


git-svn-id: http://skia.googlecode.com/svn/trunk@164 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
4226396806f99fea03fcc4f95f6367402bd5fa3d 01-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add BitmapCopyTest. Still need to consider the src==no_config case



git-svn-id: http://skia.googlecode.com/svn/trunk@163 2bbb7eff-a529-9590-31e7-b0007b416f81
itmapCopyTest.cpp
f95abb54afa5469c53d3ac899ecbce8a386471c1 13-Apr-2009 Mike Reed <reed@google.com> Pull latest changes from skia/trunk:

SkColorPriv.h - change alpha macro to favor keep opaque destinations opaque
SkFontHost.h - new apis for accessing font tables
SkPostConfig.h - more #ifdef protections around windows.h
SkFontHost_tables.cpp added
Various updates to unit tests
rcOverTest.cpp
est.cpp
est.h
estmain.cpp
9781ca586618cc8ea055f54021e706824313d4f5 14-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkSfntUtils to parse some known truetype tables
add comments and cleanup to count_tables in SkFontHost_tables.cpp
fix transparency bug in gifs
use (alpha+1) for blending in srcover mode, to ensure opaque results



git-svn-id: http://skia.googlecode.com/svn/trunk@155 2bbb7eff-a529-9590-31e7-b0007b416f81
rcOverTest.cpp
eeb3b7ff9813600b6cab662e1a0174ee2e279cac 09-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support -android mode when running tests, which spews out android specific
formatting for their testing env.



git-svn-id: http://skia.googlecode.com/svn/trunk@152 2bbb7eff-a529-9590-31e7-b0007b416f81
est.cpp
est.h
estmain.cpp
da3b8b285a5e3e6f344461d67e3370b27701756d 02-Apr-2009 Mike Reed <> AI 144248: add unittests
add android-specific work around for double-initialization of globals

Automated import of CL 144248
ndroid.mk
lipCubicTest.cpp
eometryTest.cpp
athTest.cpp
atrixTest.cpp
ackBitsTest.cpp
athMeasureTest.cpp
athTest.cpp
k64Test.cpp
ortTest.cpp
rcOverTest.cpp
treamTest.cpp
tringTest.cpp
est.cpp
est.h
estClassDef.h
riangulationTest.cpp
tilsTest.cpp
estmain.cpp
80e39a77b16f4396eed230efea1d0b2fc8cbfb00 02-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> cleanup formating (e.g. no trailing spaces)



git-svn-id: http://skia.googlecode.com/svn/trunk@143 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
atrixTest.cpp
ackBitsTest.cpp
athTest.cpp
k64Test.cpp
rcOverTest.cpp
treamTest.cpp
est.h
estClassDef.h
tilsTest.cpp
estmain.cpp
57b799e951064b9328b5c676dcc3b4cb4477cc2b 01-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename tests/main to testmain.cpp
add ANDROID specific work-around for double-cinit bug



git-svn-id: http://skia.googlecode.com/svn/trunk@142 2bbb7eff-a529-9590-31e7-b0007b416f81
ain.cpp
estmain.cpp
d252db03d9650013b545ef9781fe993c07f8f314 01-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> API change: SkPath computeBounds -> getBounds



git-svn-id: http://skia.googlecode.com/svn/trunk@140 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
ain.cpp
04225dcdec5a01bc9889b7fb03e7aceb87fccc6e 20-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> build with -Wall
fix associated warnings (at least on gcc 4.0.1)



git-svn-id: http://skia.googlecode.com/svn/trunk@129 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
ackBitsTest.cpp
riangulationTest.cpp
eff416bec1bc08685af1dc4265b9d860e43b8240 18-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix heapsort



git-svn-id: http://skia.googlecode.com/svn/trunk@126 2bbb7eff-a529-9590-31e7-b0007b416f81
ortTest.cpp
6f8491bf76cba6c198416048fe577d29b252474b 13-Mar-2009 turk@google.com <turk@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial implementation of polygon trianagulation. It seems to be robust and passes the associated tests,
but has some problems:
(1) it generates T-vertices;
(2) it only works with right-handed outer contours;
(3) The sort and search are inefficient.


git-svn-id: http://skia.googlecode.com/svn/trunk@119 2bbb7eff-a529-9590-31e7-b0007b416f81
riangulationTest.cpp
5e5adfd12cc2cb194db971708cd7f34ff47e10b4 07-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> migrate more legacy unittests into tests/
SkParse yet to be cleaned up



git-svn-id: http://skia.googlecode.com/svn/trunk@113 2bbb7eff-a529-9590-31e7-b0007b416f81
athMeasureTest.cpp
ortTest.cpp
treamTest.cpp
estXCode/Tests.xcodeproj/project.pbxproj
ain.cpp
0650c6ca12e026201091f3e9ea9cbf0fed2b6da1 04-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move SkTSort.h back to private, and instead allow in the makefile for tests to
see private headers. This also means the tests don't have to use ../.. to find
the private header they want.



git-svn-id: http://skia.googlecode.com/svn/trunk@107 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCubicTest.cpp
7d3a58a5e442e0aba239616a4e996e64866ffbd0 04-Mar-2009 turk@google.com <turk@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Format more consistently with the rest of Skia.



git-svn-id: http://skia.googlecode.com/svn/trunk@106 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCubicTest.cpp
d66efc273e4996fb18f343bd30dcd506a1698b5b 03-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add test for different srcover implementations



git-svn-id: http://skia.googlecode.com/svn/trunk@103 2bbb7eff-a529-9590-31e7-b0007b416f81
rcOverTest.cpp
estXCode/Tests.xcodeproj/project.pbxproj
5755a2a9ab531192fd26b523960ae0c551c7b24c 03-Mar-2009 turk@google.com <turk@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Unit test and bug fixes for cubic Bezier clipping.


git-svn-id: http://skia.googlecode.com/svn/trunk@102 2bbb7eff-a529-9590-31e7-b0007b416f81
lipCubicTest.cpp
3abec1d7c38e9bd786fc6057f9608f3eeec98c86 02-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add initial unittests for Path
add operator== for paths
still need to implement isRect!



git-svn-id: http://skia.googlecode.com/svn/trunk@99 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
estXCode/Tests.xcodeproj/project.pbxproj
a396a16d53c1355c59f9f1f739618b47dc346ee4 28-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add tests (unittests) to Makefile
move SkTSort.h into public includes



git-svn-id: http://skia.googlecode.com/svn/trunk@98 2bbb7eff-a529-9590-31e7-b0007b416f81
k64Test.cpp
d8730ea8b25d692c0656f8cf03f02aecfab2a17c 27-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> more tests (need more meat in there)



git-svn-id: http://skia.googlecode.com/svn/trunk@97 2bbb7eff-a529-9590-31e7-b0007b416f81
eometryTest.cpp
athTest.cpp
atrixTest.cpp
ackBitsTest.cpp
k64Test.cpp
tringTest.cpp
estClassDef.h
estXCode/Tests.xcodeproj/project.pbxproj
tilsTest.cpp
ed673310e2551e64d8196f7776d7d4c92085f8c2 27-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add initial unittest framework (tests)
move some previous unittests out of core classes and into tests



git-svn-id: http://skia.googlecode.com/svn/trunk@96 2bbb7eff-a529-9590-31e7-b0007b416f81
athTest.cpp
atrixTest.cpp
ackBitsTest.cpp
est.cpp
est.h
estXCode/Tests.xcodeproj/project.pbxproj
tilsTest.cpp
ain.cpp