aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkGlyphCache.cpp
Commit message (Collapse)AuthorAge
* Require SK_DECLARE_STATIC_LAZY_PTR is used in global scope.Gravatar mtklein2014-10-13
| | | | | | | | | | | | | Function- or method- local scope isn't threadsafe; the pointer is generally zero-initialized on first use in function scope (i.e. lazily... we have to go deeper), but for globals we can be pretty sure the linker will do that for us. BUG=skia: No public API changes. TBR=reed@google.com Review URL: https://codereview.chromium.org/651723003
* "NULL !=" = NULLGravatar bsalomon2014-09-05
| | | | | | | | R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/544233002
* Remove unused SkGlyphCache::VisitAllCaches.Gravatar bungeman2014-08-18
| | | | | | | | R=reed@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/472153002
* Port most uses of SkOnce to SkLazyPtr.Gravatar mtklein2014-06-02
| | | | | | | | | | | | | | BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=15006 Committed: http://code.google.com/p/skia/source/detail?r=15014 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005
* Revert of Port most uses of SkOnce to SkLazyPtr. ↵Gravatar commit-bot@chromium.org2014-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/304383005/) Reason for revert: linux x86-64 release segfault in src/ports/SkFontHost_fontconfig.cpp:107 http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86_64-Release/builds/905/steps/RunTests/logs/stdio Original issue's description: > Port most uses of SkOnce to SkLazyPtr. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=15006 > > Committed: http://code.google.com/p/skia/source/detail?r=15014 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/306063004 git-svn-id: http://skia.googlecode.com/svn/trunk@15015 2bbb7eff-a529-9590-31e7-b0007b416f81
* Port most uses of SkOnce to SkLazyPtr.Gravatar commit-bot@chromium.org2014-05-30
| | | | | | | | | | | | | | BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=15006 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005 git-svn-id: http://skia.googlecode.com/svn/trunk@15014 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Port most uses of SkOnce to SkLazyPtr. ↵Gravatar commit-bot@chromium.org2014-05-30
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/304383005/) Reason for revert: Leaking refs on SkTypeface on Macs. Original issue's description: > Port most uses of SkOnce to SkLazyPtr. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=15006 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/304283007 git-svn-id: http://skia.googlecode.com/svn/trunk@15009 2bbb7eff-a529-9590-31e7-b0007b416f81
* Port most uses of SkOnce to SkLazyPtr.Gravatar commit-bot@chromium.org2014-05-30
| | | | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005 git-svn-id: http://skia.googlecode.com/svn/trunk@15006 2bbb7eff-a529-9590-31e7-b0007b416f81
* Clean up global gSkSuppressFontCachePurgeSpew.Gravatar commit-bot@chromium.org2014-05-12
| | | | | | | | | | | | | | | | | | No one is using it except to flick it to true to shut up the spew, but the spew is already guarded by #ifdef SPEW_PURGE_STATUS. Let's leave it to SPEW_PURGE_STATUS. Noticed this specificially when TSAN complained about FontScalerBench modifying it in a thread-unsafe way. BUG=skia:1792 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/264333008 git-svn-id: http://skia.googlecode.com/svn/trunk@14697 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add missing include for r14397.Gravatar bungeman@google.com2014-04-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@14398 2bbb7eff-a529-9590-31e7-b0007b416f81
* Create SkGlyphCache globals with SkOnce.Gravatar bungeman@google.com2014-04-28
| | | | | | | | | | | | VC++ will have magic statics with VS2014, but does not currently have them. The thread unsafe implementation was causing the DirectWrite bots to randomly crash when running multi-threaded tests, as gGlobals could be seen as NULL. R=mtklein@google.com Review URL: https://codereview.chromium.org/252713002 git-svn-id: http://skia.googlecode.com/svn/trunk@14397 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move distance field generation to the glyph cache.Gravatar commit-bot@chromium.org2014-04-14
| | | | | | | | | | | | | | Distance fields are currently created in GrTextStrike, which is the wrong place. This moves that to the glyph cache where it belongs. As part of my testing, I found that when we fall back to paths in the GrDistanceFieldTextContext it was not scaling them properly, so that's fixed in here too. R=robertphillips@google.com, reed@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/227593010 git-svn-id: http://skia.googlecode.com/svn/trunk@14193 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix (some) 64bit warnings -- size_t -> intGravatar commit-bot@chromium.org2014-01-24
| | | | | | | | | | | BUG=skia: R=mtklein@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/147053003 git-svn-id: http://skia.googlecode.com/svn/trunk@13178 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r12427Gravatar rmistry@google.com2013-12-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12428 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-12-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12427 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove unused fields from SkGlyphCache.Gravatar bungeman@google.com2013-11-26
| | | | | | Review URL: https://codereview.chromium.org/89423003 git-svn-id: http://skia.googlecode.com/svn/trunk@12407 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-09-27
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@11493 2bbb7eff-a529-9590-31e7-b0007b416f81
* add counting to Globals, and refactor some for clarityGravatar reed@google.com2013-09-26
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/24447003 git-svn-id: http://skia.googlecode.com/svn/trunk@11484 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove obsolete USE_CACHE_HASHGravatar reed@google.com2013-09-24
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/23526082 git-svn-id: http://skia.googlecode.com/svn/trunk@11450 2bbb7eff-a529-9590-31e7-b0007b416f81
* allow createScalerContext to return null, and then have the GDI backend ↵Gravatar reed@google.com2013-07-10
| | | | | | | | | | | trigger that if we fail to create the necessary GDI resources BUG= R=bungeman@google.com Review URL: https://codereview.chromium.org/18484005 git-svn-id: http://skia.googlecode.com/svn/trunk@9957 2bbb7eff-a529-9590-31e7-b0007b416f81
* move failable work outside of constructors for SkGlyphCache and ↵Gravatar reed@google.com2013-07-09
| | | | | | | | | | SkScalerContextGDI. If we fail, try to purge everything and try again, in case the failure was from memory/os-resource exhaustion (e.g. out of HDC handles in windows) BUG= Review URL: https://codereview.chromium.org/18132009 git-svn-id: http://skia.googlecode.com/svn/trunk@9930 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-06-20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9695 2bbb7eff-a529-9590-31e7-b0007b416f81
* combine glyph and image bulk alloc, and adjust initial alloc size, to reduce ↵Gravatar reed@google.com2013-06-19
| | | | | | | | | | | | 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
* we only need one fontmetrics, since the paint (and fontcache) now know ↵Gravatar reed@google.com2013-05-08
| | | | | | | | | | explicitly if they are horizontal or vertical. Review URL: https://codereview.chromium.org/14940018 git-svn-id: http://skia.googlecode.com/svn/trunk@9058 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkTypeface* parameter to SkScalerContext (and its callers)Gravatar reed@google.com2013-03-19
| | | | | | | Use SkTypeface to create scalercontext instead of SkFontHost Review URL: https://codereview.chromium.org/12706010 git-svn-id: http://skia.googlecode.com/svn/trunk@8223 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-01-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
* Disabling validation of the glyph cache for standard debug builds.Gravatar djsollen@google.com2012-11-30
| | | | | | | | | The validation step is adding 50% overhead to the rendering of text heavy SkPicture files. Review URL: https://codereview.appspot.com/6856123 git-svn-id: http://skia.googlecode.com/svn/trunk@6635 2bbb7eff-a529-9590-31e7-b0007b416f81
* Use consistent globals in AttachCache.Gravatar bungeman@google.com2012-10-29
| | | | | | | https://codereview.appspot.com/6816052/ git-svn-id: http://skia.googlecode.com/svn/trunk@6188 2bbb7eff-a529-9590-31e7-b0007b416f81
* Result of running tools/sanitize_source_files.py (which was added in ↵Gravatar rmistry@google.com2012-08-23
| | | | | | | | | https://codereview.appspot.com/6465078/) This CL is part I of IV (I broke down the 1280 files into 4 CLs). Review URL: https://codereview.appspot.com/6485054 git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
* Update SkFlattenable buffers to be more modular.Gravatar djsollen@google.com2012-08-07
| | | | | | | | | | | | | | | | | 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
* land https://codereview.appspot.com/6448046/Gravatar reed@google.com2012-07-30
| | | | | | | | Add a method reporting used font cache size to the SkGraphics API git-svn-id: http://skia.googlecode.com/svn/trunk@4825 2bbb7eff-a529-9590-31e7-b0007b416f81
* removing trailing ',' on last entry in enum, to fix warningGravatar reed@google.com2012-07-20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4686 2bbb7eff-a529-9590-31e7-b0007b416f81
* add explicit purgeAll() so we don't get foiled by the min cache-limitGravatar reed@google.com2012-06-27
| | | | | | | call unref instead of delete on the GrFontScaler Review URL: https://codereview.appspot.com/6353045 git-svn-id: http://skia.googlecode.com/svn/trunk@4366 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkPath::getVerbs/countVerbsGravatar bsalomon@google.com2012-06-07
| | | | | | | Review URL: http://codereview.appspot.com/6306053/ git-svn-id: http://skia.googlecode.com/svn/trunk@4209 2bbb7eff-a529-9590-31e7-b0007b416f81
* ~glyphcache_globals needs to actually delete its cacheGravatar reed@google.com2012-05-21
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4011 2bbb7eff-a529-9590-31e7-b0007b416f81
* change SetTLSFontCacheLimit to be void, since it doesn't easily know the ↵Gravatar reed@google.com2012-05-17
| | | | | | prev value git-svn-id: http://skia.googlecode.com/svn/trunk@3987 2bbb7eff-a529-9590-31e7-b0007b416f81
* Allow font-cache to use thread_local_storage for a private cacheGravatar reed@google.com2012-05-17
| | | | | | Review URL: https://codereview.appspot.com/6200051 git-svn-id: http://skia.googlecode.com/svn/trunk@3986 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert TLS change (until we impl windows backend)Gravatar reed@google.com2012-05-07
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3858 2bbb7eff-a529-9590-31e7-b0007b416f81
* allow thread-local font cacheGravatar reed@google.com2012-05-07
| | | | | | Review URL: https://codereview.appspot.com/6101053 git-svn-id: http://skia.googlecode.com/svn/trunk@3857 2bbb7eff-a529-9590-31e7-b0007b416f81
* move FontCacheLimit implementations into SkGlyphCache.cpp, in prep for TLSGravatar reed@google.com2012-04-23
| | | | | | Review URL: https://codereview.appspot.com/6110043 git-svn-id: http://skia.googlecode.com/svn/trunk@3751 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix debug buildGravatar reed@google.com2012-04-23
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3750 2bbb7eff-a529-9590-31e7-b0007b416f81
* cleanups in prep for tls cacheGravatar reed@google.com2012-04-23
| | | | | | Review URL: https://codereview.appspot.com/6109045 git-svn-id: http://skia.googlecode.com/svn/trunk@3749 2bbb7eff-a529-9590-31e7-b0007b416f81
* disable SPEW_PURGE_STATUSGravatar reed@google.com2012-01-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3085 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove all references to SkGlobals (obsolete)Gravatar reed@google.com2011-11-17
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@2713 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove use of SkGlobalsGravatar reed@google.com2011-11-17
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@2712 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove obsolete SK_USE_RUNTIME_GLOBALSGravatar reed@google.com2011-11-17
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@2711 2bbb7eff-a529-9590-31e7-b0007b416f81
* add api to SkGraphics to get/set font cache limitGravatar reed@google.com2011-11-08
| | | | | | | | add SK_DEFAULT_FONT_CACHE_LIMIT to SkUserConfig, to override our default value git-svn-id: http://skia.googlecode.com/svn/trunk@2621 2bbb7eff-a529-9590-31e7-b0007b416f81
* add hack for testing gSkSuppressFontCachePurgeSpewGravatar reed@google.com2011-11-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@2589 2bbb7eff-a529-9590-31e7-b0007b416f81
* detect when LCD is really just BW, and remark the glyph as that.Gravatar reed@google.com2011-09-21
| | | | | | | | | | | | allows us to take a much faster blitter. TODO: inform SkGlyphCache of this, so it can shrink its allocation for the image buffer (since BW takes up 1/16 as much ram) TODO(2): allow for A8->BW conversion my having scalercontext set a flag if it really-wants A8 (i.e. we have a maskfilter) git-svn-id: http://skia.googlecode.com/svn/trunk@2301 2bbb7eff-a529-9590-31e7-b0007b416f81
* Automatic update of all copyright notices to reflect new license terms.Gravatar epoger@google.com2011-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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