robertphillips@google.com
1f71846e5c
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
2014-02-06 14:22:47 +00:00
reed@google.com
4f7c61583b
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
2014-02-06 14:11:56 +00:00
reed@google.com
999da9c5e4
fix refcounting in SkImage::NewRasterData
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13338 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-06 13:43:07 +00:00
senorblanco@chromium.org
0937335e6b
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
2014-02-05 23:04:28 +00:00
senorblanco@chromium.org
5251e2b91a
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
2014-02-05 22:36:31 +00:00
commit-bot@chromium.org
8a13588b6f
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
2014-02-05 16:29:12 +00:00
reed@google.com
76f10a3bd9
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
2014-02-05 15:32:21 +00:00
skia.committer@gmail.com
1dab403e44
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13316 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 03:01:48 +00:00
commit-bot@chromium.org
65ee5f424c
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
2014-02-04 17:49:48 +00:00
reed@google.com
d52a99703b
fix int->scalar warning
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13305 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 16:14:58 +00:00
reed@google.com
28183b4043
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
2014-02-04 15:34:10 +00:00
senorblanco@chromium.org
f4e1a7614d
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
2014-02-04 00:28:46 +00:00
fmalita@google.com
ec7c35d015
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
2014-02-03 23:25:32 +00:00
senorblanco@chromium.org
58d1466c77
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
2014-02-03 22:36:39 +00:00
senorblanco@chromium.org
aba651c3f1
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
2014-02-03 22:22:16 +00:00
commit-bot@chromium.org
c22d139808
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
2014-02-03 18:08:33 +00:00
robertphillips@google.com
7017288811
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
2014-02-01 15:45:23 +00:00
tfarina@chromium.org
bbff20855f
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
2014-01-31 21:48:52 +00:00
commit-bot@chromium.org
e254310a55
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
2014-01-31 19:42:58 +00:00
commit-bot@chromium.org
c6d3c444ca
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
2014-01-31 16:22:57 +00:00
commit-bot@chromium.org
6169f2b4da
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
2014-01-31 00:04:25 +00:00
tfarina@chromium.org
ceddfeb2af
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
2014-01-30 22:51:42 +00:00
commit-bot@chromium.org
a2bd2d12ad
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
2014-01-30 22:16:32 +00:00
commit-bot@chromium.org
8b0e8ac5f5
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
2014-01-30 18:58:24 +00:00
robertphillips@google.com
5fbccb35eb
Suppress new valgrind complaint
...
https://codereview.chromium.org/144853006/
git-svn-id: http://skia.googlecode.com/svn/trunk@13244 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 18:51:29 +00:00
commit-bot@chromium.org
5a47b09fe8
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
2014-01-30 15:30:50 +00:00
tfarina@chromium.org
62c2ce8416
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
2014-01-30 00:28:54 +00:00
tfarina@chromium.org
68f3a3e0b0
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
2014-01-29 23:56:40 +00:00
commit-bot@chromium.org
11ea96c62a
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
2014-01-28 21:15:42 +00:00
commit-bot@chromium.org
04bfdc39a7
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
2014-01-28 20:21:23 +00:00
commit-bot@chromium.org
5683acd909
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
2014-01-28 20:02:45 +00:00
commit-bot@chromium.org
01260b2dbc
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
2014-01-27 21:54:18 +00:00
tfarina@chromium.org
0fba15125b
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
2014-01-27 21:40:14 +00:00
commit-bot@chromium.org
c2abd54eda
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
2014-01-25 16:54:31 +00:00
commit-bot@chromium.org
709ca75f03
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
2014-01-24 22:38:39 +00:00
tfarina@chromium.org
8f6884aab8
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
2014-01-24 20:56:26 +00:00
commit-bot@chromium.org
d8ed85101e
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
2014-01-24 20:49:44 +00:00
commit-bot@chromium.org
227c246731
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
2014-01-24 18:33:07 +00:00
halcanary@google.com
68c74884d0
Revert "Turn NVPR on by default (but off in tools)."
...
This reverts commit 83d81c96de
.
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
2014-01-24 16:04:09 +00:00
commit-bot@chromium.org
83d81c96de
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
2014-01-24 14:38:13 +00:00
commit-bot@chromium.org
6dda827913
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
2014-01-23 17:21:19 +00:00
commit-bot@chromium.org
fed2ab6483
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
2014-01-23 15:16:05 +00:00
tfarina@chromium.org
58674817a7
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
2014-01-21 23:39:22 +00:00
commit-bot@chromium.org
bd58febffb
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
2014-01-17 17:56:21 +00:00
commit-bot@chromium.org
9e90aed5de
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
2014-01-16 16:35:09 +00:00
commit-bot@chromium.org
c665804300
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
2014-01-15 23:09:01 +00:00
commit-bot@chromium.org
05ec2233e3
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
2014-01-15 18:00:57 +00:00
scroggo@google.com
5ccae2c5b1
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
2014-01-15 16:56:52 +00:00
commit-bot@chromium.org
32678d9a45
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
2014-01-15 02:38:22 +00:00
commit-bot@chromium.org
e2eac8b2fd
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
2014-01-14 21:04:37 +00:00