Go to file
kkinnunen 3405800d7a Make SkGLContext lifetime more well-defined
Remove refcounting from SkGLContext.

SkGLContext is expected to behave like GrContextFactory would own
it, as implied by the GrContextFactory function.

If it is refcounted, this does not hold.

Also other use sites, such as in SkOSWindow_win (command buffer gl
object), confirm the behavior. The object is explicitly owned and
destroyed, not shared.

Also fixes potential crashes from using GL context of an abandoned
context.

Also fixes potential crashes in DM/nanobench, if the GrContext lives
longer than GLContext through internal refing of GrContext.

Moves the non-trivial implementations from GrContextFactory.h to
.cpp, just for consistency sake.

Changes pathops_unittest.gyp. The pathops_unittest uses
GrContextFactory, but did not link to its implementation. The reason
they worked was that the implementation used (constructors, destructors)
happened to be in the .h file.

This works towards being able to use command buffer and NVPR from
the SampleApp.

BUG=skia:2992
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1511773005

Committed: https://skia.googlesource.com/skia/+/830e012187f951d49d7e46e196ac8d1e653a25da

Review URL: https://codereview.chromium.org/1511773005
2016-01-06 23:49:31 -08:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
bin bin/sync-and-gyp: sh->py (make more cross-platform) 2015-11-09 08:28:13 -08:00
cmake CMake: generate SkUserConfig.h with configure_file 2016-01-05 08:32:32 -08:00
debugger default SkPixelSerializer 2015-12-10 12:40:23 -08:00
dm Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
example Create a standalone example for using Skia with SDL 2015-11-13 11:22:19 -08:00
experimental SampleApp: remove Picture_DeviceType 2016-01-05 00:04:33 -08:00
gm handle halfway case in scan converter 2016-01-04 14:17:47 -08:00
gyp Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
include Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
infra Add Test-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release to the CQ 2016-01-06 10:54:50 -08:00
platform_tools Android bots: set battery threshold to 80% 2016-01-04 12:33:26 -08:00
resources demo tweaks, scale up perlin, add call to flush for fps 2015-11-09 13:10:30 -08:00
samplecode SampleApp: remove Picture_DeviceType 2016-01-05 00:04:33 -08:00
site Documentation: FAQ TOC 2015-12-22 07:08:12 -08:00
src Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
tests Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
third_party Disable ES2 on Linux SDL 2015-12-28 08:44:27 -08:00
tools DM: add a pixel check to serialize 2016-01-06 14:20:30 -08:00
.gitignore android/apps: Add CanvasProof App; 2015-09-23 12:40:34 -07:00
AUTHORS use malloc/calloc/free instead of moz_malloc/moz_calloc/moz_free in ports/SkMemory_mozalloc.cpp 2015-11-23 10:30:14 -08:00
BUILD.public For Google3, enable SK_SUPPORT_LEGACY_SAVEFLAGS; required by legacy webkit_headless. 2016-01-06 12:51:58 -08:00
codereview.settings Automatically add a docs preview link and NOTRY=true when there are only docs changes. 2015-02-26 10:16:13 -08:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Cherry pick one more commit into libjpeg-turbo 2015-11-24 07:14:35 -08:00
Doxyfile Documentation: SkCanvas API 2015-05-19 10:21:29 -07:00
gyp_skia Support SKIA_OUT on Mac and ChromeOS 2015-05-04 08:04:28 -07:00
gyp_skia.py Roll gyp deps from 1765 to 1796. 2013-11-21 18:11:14 +00:00
LICENSE Include resources directory in google3 sync. 2015-10-20 13:00:48 -07:00
make.bat Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
make.py GYP: remove stale skia_scalar gyp variable 2015-11-10 13:25:12 -05:00
Makefile Add visualbench as valid target to Makefile 2015-12-18 08:05:06 -08:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py Add link to Gold trybot runs in every uploaded Skia CL 2015-12-15 06:23:33 -08:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
skia.gyp Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
SKP_VERSION Update SKP version 2016-01-03 00:36:36 -08:00
whitespace.txt Whitespace change to trigger bots after gsutil change 2015-11-24 11:36:09 -08:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.