diff options
author | Torne (Richard Coles) <torne@google.com> | 2013-11-28 11:55:43 +0000 |
---|---|---|
committer | Torne (Richard Coles) <torne@google.com> | 2013-11-28 11:55:43 +0000 |
commit | f2477e01787aa58f445919b809d89e252beef54f (patch) | |
tree | 2db962b4af39f0db3a5f83b314373d0530c484b8 /skia | |
parent | 7daea1dd5ff7e419322de831b642d81af3247912 (diff) | |
download | chromium_org-f2477e01787aa58f445919b809d89e252beef54f.tar.gz |
Merge from Chromium at DEPS revision 237746
This commit was generated by merge_to_master.py.
Change-Id: I8997af4cddfeb09a7c26f7e8e672c712cab461ea
Diffstat (limited to 'skia')
48 files changed, 472 insertions, 157 deletions
diff --git a/skia/ext/analysis_canvas.cc b/skia/ext/analysis_canvas.cc index 9db42f17ab..e77ff2b72c 100644 --- a/skia/ext/analysis_canvas.cc +++ b/skia/ext/analysis_canvas.cc @@ -182,6 +182,16 @@ void AnalysisDevice::drawOval(const SkDraw& draw, is_transparent_ = false; } +void AnalysisDevice::drawRRect(const SkDraw& draw, + const SkRRect& rr, + const SkPaint& paint) { + // This should add the SkRRect to an SkPath, and call + // drawPath, but since drawPath ignores the SkPath, just + // do the same work here. + is_solid_color_ = false; + is_transparent_ = false; +} + void AnalysisDevice::drawPath(const SkDraw& draw, const SkPath& path, const SkPaint& paint, diff --git a/skia/ext/analysis_canvas.h b/skia/ext/analysis_canvas.h index 78d72ff938..909a19826d 100644 --- a/skia/ext/analysis_canvas.h +++ b/skia/ext/analysis_canvas.h @@ -84,6 +84,9 @@ class SK_API AnalysisDevice : public SkBitmapDevice { virtual void drawRect(const SkDraw& draw, const SkRect& rect, const SkPaint& paint) OVERRIDE; + virtual void drawRRect(const SkDraw& draw, + const SkRRect& rr, + const SkPaint& paint) OVERRIDE; virtual void drawOval(const SkDraw& draw, const SkRect& oval, const SkPaint& paint) OVERRIDE; diff --git a/skia/ext/bitmap_platform_device.h b/skia/ext/bitmap_platform_device.h index 56e41763f8..a0770f7171 100644 --- a/skia/ext/bitmap_platform_device.h +++ b/skia/ext/bitmap_platform_device.h @@ -12,10 +12,10 @@ #include "skia/ext/bitmap_platform_device_win.h" #elif defined(__APPLE__) #include "skia/ext/bitmap_platform_device_mac.h" -#elif defined(ANDROID) -#include "skia/ext/bitmap_platform_device_android.h" -#elif defined(__linux__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__sun) -#include "skia/ext/bitmap_platform_device_linux.h" +#elif defined(USE_CAIRO) +#include "skia/ext/bitmap_platform_device_cairo.h" +#else +#include "skia/ext/bitmap_platform_device_skia.h" #endif namespace skia { diff --git a/skia/ext/bitmap_platform_device_linux.cc b/skia/ext/bitmap_platform_device_cairo.cc index f259c6fd31..e9316297d0 100644 --- a/skia/ext/bitmap_platform_device_linux.cc +++ b/skia/ext/bitmap_platform_device_cairo.cc @@ -1,8 +1,8 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "skia/ext/bitmap_platform_device_linux.h" +#include "skia/ext/bitmap_platform_device_cairo.h" #include "skia/ext/bitmap_platform_device_data.h" #include "skia/ext/platform_canvas.h" diff --git a/skia/ext/bitmap_platform_device_linux.h b/skia/ext/bitmap_platform_device_cairo.h index 048092e076..914be341b7 100644 --- a/skia/ext/bitmap_platform_device_linux.h +++ b/skia/ext/bitmap_platform_device_cairo.h @@ -1,9 +1,9 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef SKIA_EXT_BITMAP_PLATFORM_DEVICE_LINUX_H_ -#define SKIA_EXT_BITMAP_PLATFORM_DEVICE_LINUX_H_ +#ifndef SKIA_EXT_BITMAP_PLATFORM_DEVICE_CAIRO_H_ +#define SKIA_EXT_BITMAP_PLATFORM_DEVICE_CAIRO_H_ #include "base/basictypes.h" #include "base/compiler_specific.h" @@ -111,4 +111,4 @@ class BitmapPlatformDevice : public SkBitmapDevice, public PlatformDevice { } // namespace skia -#endif // SKIA_EXT_BITMAP_PLATFORM_DEVICE_LINUX_H_ +#endif // SKIA_EXT_BITMAP_PLATFORM_DEVICE_CAIRO_H_ diff --git a/skia/ext/bitmap_platform_device_android.cc b/skia/ext/bitmap_platform_device_skia.cc index 9d6051e225..6f8370d6df 100644 --- a/skia/ext/bitmap_platform_device_android.cc +++ b/skia/ext/bitmap_platform_device_skia.cc @@ -1,8 +1,8 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "skia/ext/bitmap_platform_device_android.h" +#include "skia/ext/bitmap_platform_device_skia.h" #include "skia/ext/platform_canvas.h" namespace skia { diff --git a/skia/ext/bitmap_platform_device_android.h b/skia/ext/bitmap_platform_device_skia.h index 4e1735f1f5..853f58bbe5 100644 --- a/skia/ext/bitmap_platform_device_android.h +++ b/skia/ext/bitmap_platform_device_skia.h @@ -1,12 +1,12 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef SKIA_EXT_BITMAP_PLATFORM_DEVICE_ANDROID_H_ -#define SKIA_EXT_BITMAP_PLATFORM_DEVICE_ANDROID_H_ +#ifndef SKIA_EXT_BITMAP_PLATFORM_DEVICE_SKIA_H_ +#define SKIA_EXT_BITMAP_PLATFORM_DEVICE_SKIA_H_ -#include "base/memory/ref_counted.h" #include "base/compiler_specific.h" +#include "base/memory/ref_counted.h" #include "skia/ext/platform_device.h" namespace skia { @@ -57,4 +57,4 @@ class BitmapPlatformDevice : public SkBitmapDevice, public PlatformDevice { } // namespace skia -#endif // SKIA_EXT_BITMAP_PLATFORM_DEVICE_ANDROID_H_ +#endif // SKIA_EXT_BITMAP_PLATFORM_DEVICE_SKIA_H_ diff --git a/skia/ext/bitmap_platform_device_win.cc b/skia/ext/bitmap_platform_device_win.cc index 203281d327..42f431bc41 100644 --- a/skia/ext/bitmap_platform_device_win.cc +++ b/skia/ext/bitmap_platform_device_win.cc @@ -5,6 +5,8 @@ #include <windows.h> #include <psapi.h> +#include "base/logging.h" +#include "base/debug/alias.h" #include "skia/ext/bitmap_platform_device_win.h" #include "skia/ext/bitmap_platform_device_data.h" #include "skia/ext/platform_canvas.h" @@ -57,6 +59,62 @@ HBITMAP CreateHBitmap(int width, int height, bool is_opaque, HBITMAP hbitmap = CreateDIBSection(NULL, reinterpret_cast<BITMAPINFO*>(&hdr), 0, data, shared_section, 0); + + // If this call fails, we're gonna crash hard. Try to get some useful + // information out before we crash for post-mortem analysis. + if (!hbitmap) { + // Make sure parameters are saved in the minidump. + base::debug::Alias(&width); + base::debug::Alias(&height); + + int last_error = GetLastError(); + base::debug::Alias(&last_error); + + int num_gdi_handles = GetGuiResources(GetCurrentProcess(), + GR_GDIOBJECTS); + if (num_gdi_handles == 0) { + int get_gui_resources_error = GetLastError(); + base::debug::Alias(&get_gui_resources_error); + CHECK(false); + } + + base::debug::Alias(&num_gdi_handles); + const int kLotsOfHandles = 9990; + if (num_gdi_handles > kLotsOfHandles) + CHECK(false); + + PROCESS_MEMORY_COUNTERS_EX pmc; + pmc.cb = sizeof(pmc); + if (!GetProcessMemoryInfo(GetCurrentProcess(), + reinterpret_cast<PROCESS_MEMORY_COUNTERS*>(&pmc), + sizeof(pmc))) { + CHECK(false); + } + const size_t kLotsOfMemory = 1500 * 1024 * 1024; // 1.5GB + if (pmc.PagefileUsage > kLotsOfMemory) + CHECK(false); + if (pmc.PrivateUsage > kLotsOfMemory) + CHECK(false); + + // Huh, that's weird. We don't have crazy handle count, we don't have + // ridiculous memory usage. Try to allocate a small bitmap and see if that + // fails too. + hdr.biWidth = 5; + hdr.biHeight = 5; + void* small_data; + HBITMAP small_bitmap = CreateDIBSection( + NULL, reinterpret_cast<BITMAPINFO*>(&hdr), + 0, &small_data, shared_section, 0); + if (!small_bitmap) + CHECK(false); + BITMAP bitmap_data; + if (GetObject(small_bitmap, sizeof(BITMAP), &bitmap_data)) { + if (!DeleteObject(small_bitmap)) + CHECK(false); + } + // No idea what's going on. Die! + CHECK(false); + } return hbitmap; } diff --git a/skia/ext/platform_device.h b/skia/ext/platform_device.h index d46b5d47a3..7e77ff1a4c 100644 --- a/skia/ext/platform_device.h +++ b/skia/ext/platform_device.h @@ -21,8 +21,7 @@ class SkMetaData; class SkPath; class SkRegion; -#if defined(OS_LINUX) || defined(OS_OPENBSD) || defined(OS_FREEBSD) \ - || defined(OS_SOLARIS) +#if defined(USE_CAIRO) typedef struct _cairo cairo_t; typedef struct _cairo_rectangle cairo_rectangle_t; #elif defined(OS_MACOSX) @@ -37,16 +36,15 @@ class PlatformDevice; #if defined(OS_WIN) typedef HDC PlatformSurface; typedef RECT PlatformRect; -#elif defined(ANDROID) -typedef void* PlatformSurface; -typedef SkIRect* PlatformRect; -#elif defined(OS_LINUX) || defined(OS_OPENBSD) || defined(OS_FREEBSD) \ - || defined(OS_SOLARIS) +#elif defined(USE_CAIRO) typedef cairo_t* PlatformSurface; typedef cairo_rectangle_t PlatformRect; #elif defined(OS_MACOSX) typedef CGContextRef PlatformSurface; typedef CGRect PlatformRect; +#else +typedef void* PlatformSurface; +typedef SkIRect* PlatformRect; #endif // The following routines provide accessor points for the functionality diff --git a/skia/ext/skia_utils_ios.mm b/skia/ext/skia_utils_ios.mm index 80c50fdec2..6f4814a2dd 100644 --- a/skia/ext/skia_utils_ios.mm +++ b/skia/ext/skia_utils_ios.mm @@ -18,11 +18,15 @@ SkBitmap CGImageToSkBitmap(CGImageRef image, CGSize size, bool is_opaque) { if (!image) return bitmap; - bitmap.setConfig(SkBitmap::kARGB_8888_Config, size.width, size.height); + bitmap.setConfig(SkBitmap::kARGB_8888_Config, + size.width, + size.height, + 0, + is_opaque ? kOpaque_SkAlphaType : kPremul_SkAlphaType); + if (!bitmap.allocPixels()) return bitmap; - bitmap.setIsOpaque(is_opaque); void* data = bitmap.getPixels(); // Allocate a bitmap context with 4 components per pixel (BGRA). Apple diff --git a/skia/ext/skia_utils_mac.h b/skia/ext/skia_utils_mac.h index e6f7b35bbc..fd000f3543 100644 --- a/skia/ext/skia_utils_mac.h +++ b/skia/ext/skia_utils_mac.h @@ -78,11 +78,15 @@ SK_API NSColor* SkColorToSRGBNSColor(SkColor color); SK_API SkBitmap CGImageToSkBitmap(CGImageRef image); // Draws an NSImage with a given size into a SkBitmap. -SK_API SkBitmap NSImageToSkBitmap(NSImage* image, NSSize size, bool is_opaque); +SK_API SkBitmap NSImageToSkBitmapWithColorSpace(NSImage* image, + bool is_opaque, + CGColorSpaceRef color_space); // Draws an NSImageRep with a given size into a SkBitmap. -SK_API SkBitmap NSImageRepToSkBitmap( - NSImageRep* image, NSSize size, bool is_opaque); +SK_API SkBitmap NSImageRepToSkBitmapWithColorSpace(NSImageRep* image, + NSSize size, + bool is_opaque, + CGColorSpaceRef colorspace); // Given an SkBitmap, return an autoreleased NSBitmapImageRep in the generic // color space. diff --git a/skia/ext/skia_utils_mac.mm b/skia/ext/skia_utils_mac.mm index 50217d0059..dcc2cccffc 100644 --- a/skia/ext/skia_utils_mac.mm +++ b/skia/ext/skia_utils_mac.mm @@ -17,23 +17,26 @@ namespace { // Draws an NSImage or an NSImageRep with a given size into a SkBitmap. -SkBitmap NSImageOrNSImageRepToSkBitmap( +SkBitmap NSImageOrNSImageRepToSkBitmapWithColorSpace( NSImage* image, NSImageRep* image_rep, NSSize size, - bool is_opaque) { + bool is_opaque, + CGColorSpaceRef color_space) { // Only image or image_rep should be provided, not both. DCHECK((image != 0) ^ (image_rep != 0)); SkBitmap bitmap; - bitmap.setConfig(SkBitmap::kARGB_8888_Config, size.width, size.height); + bitmap.setConfig(SkBitmap::kARGB_8888_Config, + size.width, + size.height, + 0, + is_opaque ? kOpaque_SkAlphaType : kPremul_SkAlphaType); + if (!bitmap.allocPixels()) return bitmap; // Return |bitmap| which should respond true to isNull(). - bitmap.setIsOpaque(is_opaque); - base::ScopedCFTypeRef<CGColorSpaceRef> color_space( - CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB)); void* data = bitmap.getPixels(); // Allocate a bitmap context with 4 components per pixel (BGRA). Apple @@ -217,13 +220,18 @@ SkBitmap CGImageToSkBitmap(CGImageRef image) { return bitmap; } -SkBitmap NSImageToSkBitmap(NSImage* image, NSSize size, bool is_opaque) { - return NSImageOrNSImageRepToSkBitmap(image, nil, size, is_opaque); +SkBitmap NSImageToSkBitmapWithColorSpace( + NSImage* image, bool is_opaque, CGColorSpaceRef color_space) { + return NSImageOrNSImageRepToSkBitmapWithColorSpace( + image, nil, [image size], is_opaque, color_space); } -SkBitmap NSImageRepToSkBitmap( - NSImageRep* image_rep, NSSize size, bool is_opaque) { - return NSImageOrNSImageRepToSkBitmap(nil, image_rep, size, is_opaque); +SkBitmap NSImageRepToSkBitmapWithColorSpace(NSImageRep* image_rep, + NSSize size, + bool is_opaque, + CGColorSpaceRef color_space) { + return NSImageOrNSImageRepToSkBitmapWithColorSpace( + nil, image_rep, size, is_opaque, color_space); } NSBitmapImageRep* SkBitmapToNSBitmapImageRep(const SkBitmap& skiaBitmap) { diff --git a/skia/ext/skia_utils_mac_unittest.mm b/skia/ext/skia_utils_mac_unittest.mm index 51b957eb38..bc0d422502 100644 --- a/skia/ext/skia_utils_mac_unittest.mm +++ b/skia/ext/skia_utils_mac_unittest.mm @@ -4,6 +4,7 @@ #include "skia/ext/skia_utils_mac.mm" +#include "base/mac/mac_util.h" #include "base/mac/scoped_nsobject.h" #include "testing/gtest/include/gtest/gtest.h" @@ -102,17 +103,15 @@ void SkiaUtilsMacTest::TestSkBitmap(const SkBitmap& bitmap, bool isred) { int y = bitmap.height() > 17 ? 17 : 0; SkColor color = bitmap.getColor(x, y); - // Be tolerant of lossy color space conversions. - // TODO(sail): Fix color space conversion issues, http://crbug.com/79946 if (isred) { - EXPECT_GT(SkColorGetR(color), 245u); - EXPECT_LT(SkColorGetB(color), 10u); + EXPECT_EQ(255u, SkColorGetR(color)); + EXPECT_EQ(0u, SkColorGetB(color)); } else { - EXPECT_LT(SkColorGetR(color), 10u); - EXPECT_GT(SkColorGetB(color), 245u); + EXPECT_EQ(0u, SkColorGetR(color)); + EXPECT_EQ(255u, SkColorGetB(color)); } - EXPECT_LT(SkColorGetG(color), 10u); - EXPECT_GT(SkColorGetA(color), 245u); + EXPECT_EQ(0u, SkColorGetG(color)); + EXPECT_EQ(255u, SkColorGetA(color)); } // setBitmapDevice has been deprecated/removed. Is this test still useful? @@ -206,7 +205,9 @@ TEST_F(SkiaUtilsMacTest, NSImageRepToSkBitmap) { NSImage* image = CreateNSImage(width, height, isred); EXPECT_EQ(1u, [[image representations] count]); NSBitmapImageRep* imageRep = [[image representations] lastObject]; - SkBitmap bitmap(gfx::NSImageRepToSkBitmap(imageRep, [image size], false)); + NSColorSpace* colorSpace = [NSColorSpace deviceRGBColorSpace]; + SkBitmap bitmap(gfx::NSImageRepToSkBitmapWithColorSpace( + imageRep, [image size], false, [colorSpace CGColorSpace])); TestSkBitmap(bitmap, isred); } diff --git a/skia/ext/vector_platform_device_emf_win.cc b/skia/ext/vector_platform_device_emf_win.cc index fe1ba2927d..3356f217ad 100644 --- a/skia/ext/vector_platform_device_emf_win.cc +++ b/skia/ext/vector_platform_device_emf_win.cc @@ -211,6 +211,13 @@ void VectorPlatformDeviceEmf::drawRect(const SkDraw& draw, Cleanup(); } +void VectorPlatformDeviceEmf::drawRRect(const SkDraw& draw, const SkRRect& rr, + const SkPaint& paint) { + SkPath path; + path.addRRect(rr); + this->drawPath(draw, path, paint, NULL, true); +} + void VectorPlatformDeviceEmf::drawPath(const SkDraw& draw, const SkPath& path, const SkPaint& paint, diff --git a/skia/ext/vector_platform_device_emf_win.h b/skia/ext/vector_platform_device_emf_win.h index 61ea4413f3..df8315c4fc 100644 --- a/skia/ext/vector_platform_device_emf_win.h +++ b/skia/ext/vector_platform_device_emf_win.h @@ -42,6 +42,8 @@ class VectorPlatformDeviceEmf : public SkBitmapDevice, public PlatformDevice { const SkPaint& paint) OVERRIDE; virtual void drawRect(const SkDraw& draw, const SkRect& r, const SkPaint& paint) OVERRIDE; + virtual void drawRRect(const SkDraw&, const SkRRect& rr, + const SkPaint& paint) OVERRIDE; virtual void drawPath(const SkDraw& draw, const SkPath& path, const SkPaint& paint, const SkMatrix* prePathMatrix = NULL, diff --git a/skia/skia.gyp b/skia/skia.gyp index 79d0dfc97b..4a5d62e5b4 100644 --- a/skia/skia.gyp +++ b/skia/skia.gyp @@ -66,10 +66,12 @@ 'defines': [ 'SKIA_DLL', 'SKIA_IMPLEMENTATION=1', + 'GR_GL_IGNORE_ES3_MSAA=0', ], 'direct_dependent_settings': { 'defines': [ 'SKIA_DLL', + 'GR_GL_IGNORE_ES3_MSAA=0', ], }, }, @@ -131,5 +133,16 @@ 'ext/image_operations_bench.cc', ], }, + { + 'target_name': 'filter_fuzz_stub', + 'type': 'executable', + 'dependencies': [ + '../base/base.gyp:base', + 'skia.gyp:skia', + ], + 'sources': [ + 'tools/filter_fuzz_stub/filter_fuzz_stub.cc', + ], + }, ], } diff --git a/skia/skia_chrome.gypi b/skia/skia_chrome.gypi index c24bb7347f..32179a6fe3 100644 --- a/skia/skia_chrome.gypi +++ b/skia/skia_chrome.gypi @@ -26,13 +26,13 @@ 'ext/benchmarking_canvas.cc', 'ext/benchmarking_canvas.h', 'ext/bitmap_platform_device.h', - 'ext/bitmap_platform_device_android.cc', - 'ext/bitmap_platform_device_android.h', + 'ext/bitmap_platform_device_cairo.cc', + 'ext/bitmap_platform_device_cairo.h', 'ext/bitmap_platform_device_data.h', - 'ext/bitmap_platform_device_linux.cc', - 'ext/bitmap_platform_device_linux.h', 'ext/bitmap_platform_device_mac.cc', 'ext/bitmap_platform_device_mac.h', + 'ext/bitmap_platform_device_skia.cc', + 'ext/bitmap_platform_device_skia.h', 'ext/bitmap_platform_device_win.cc', 'ext/bitmap_platform_device_win.h', 'ext/convolver.cc', @@ -81,6 +81,10 @@ [ 'OS == "android" and enable_printing == 0', { 'sources!': [ 'ext/skia_utils_base.cc', + ], + }], + [ 'enable_printing == 0', { + 'sources!': [ 'ext/vector_platform_device_skia.cc', ], }], @@ -104,6 +108,11 @@ '-Wstring-conversion', ], }], + [ 'OS != "android" and (OS != "linux" or use_cairo==1)', { + 'sources!': [ + 'ext/bitmap_platform_device_skia.cc', + ], + }], ], 'target_conditions': [ diff --git a/skia/skia_chrome.target.darwin-arm.mk b/skia/skia_chrome.target.darwin-arm.mk index 48552a3320..c1ce976b78 100644 --- a/skia/skia_chrome.target.darwin-arm.mk +++ b/skia/skia_chrome.target.darwin-arm.mk @@ -30,7 +30,7 @@ GYP_COPIED_SOURCE_ORIGIN_DIRS := \ LOCAL_SRC_FILES := \ skia/ext/analysis_canvas.cc \ skia/ext/benchmarking_canvas.cc \ - skia/ext/bitmap_platform_device_android.cc \ + skia/ext/bitmap_platform_device_skia.cc \ skia/ext/convolver.cc \ skia/ext/google_logging.cc \ skia/ext/image_operations.cc \ @@ -96,12 +96,15 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ @@ -198,12 +201,15 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ diff --git a/skia/skia_chrome.target.darwin-mips.mk b/skia/skia_chrome.target.darwin-mips.mk index 1a650a62e0..70132f2403 100644 --- a/skia/skia_chrome.target.darwin-mips.mk +++ b/skia/skia_chrome.target.darwin-mips.mk @@ -30,7 +30,7 @@ GYP_COPIED_SOURCE_ORIGIN_DIRS := \ LOCAL_SRC_FILES := \ skia/ext/analysis_canvas.cc \ skia/ext/benchmarking_canvas.cc \ - skia/ext/bitmap_platform_device_android.cc \ + skia/ext/bitmap_platform_device_skia.cc \ skia/ext/convolver.cc \ skia/ext/google_logging.cc \ skia/ext/image_operations.cc \ @@ -96,12 +96,15 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ @@ -198,12 +201,15 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ diff --git a/skia/skia_chrome.target.darwin-x86.mk b/skia/skia_chrome.target.darwin-x86.mk index 0ac48de34f..e0b7783068 100644 --- a/skia/skia_chrome.target.darwin-x86.mk +++ b/skia/skia_chrome.target.darwin-x86.mk @@ -30,7 +30,7 @@ GYP_COPIED_SOURCE_ORIGIN_DIRS := \ LOCAL_SRC_FILES := \ skia/ext/analysis_canvas.cc \ skia/ext/benchmarking_canvas.cc \ - skia/ext/bitmap_platform_device_android.cc \ + skia/ext/bitmap_platform_device_skia.cc \ skia/ext/convolver.cc \ skia/ext/google_logging.cc \ skia/ext/image_operations.cc \ @@ -98,12 +98,15 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ @@ -203,12 +206,15 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ diff --git a/skia/skia_chrome.target.linux-arm.mk b/skia/skia_chrome.target.linux-arm.mk index 48552a3320..c1ce976b78 100644 --- a/skia/skia_chrome.target.linux-arm.mk +++ b/skia/skia_chrome.target.linux-arm.mk @@ -30,7 +30,7 @@ GYP_COPIED_SOURCE_ORIGIN_DIRS := \ LOCAL_SRC_FILES := \ skia/ext/analysis_canvas.cc \ skia/ext/benchmarking_canvas.cc \ - skia/ext/bitmap_platform_device_android.cc \ + skia/ext/bitmap_platform_device_skia.cc \ skia/ext/convolver.cc \ skia/ext/google_logging.cc \ skia/ext/image_operations.cc \ @@ -96,12 +96,15 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ @@ -198,12 +201,15 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ diff --git a/skia/skia_chrome.target.linux-mips.mk b/skia/skia_chrome.target.linux-mips.mk index 1a650a62e0..70132f2403 100644 --- a/skia/skia_chrome.target.linux-mips.mk +++ b/skia/skia_chrome.target.linux-mips.mk @@ -30,7 +30,7 @@ GYP_COPIED_SOURCE_ORIGIN_DIRS := \ LOCAL_SRC_FILES := \ skia/ext/analysis_canvas.cc \ skia/ext/benchmarking_canvas.cc \ - skia/ext/bitmap_platform_device_android.cc \ + skia/ext/bitmap_platform_device_skia.cc \ skia/ext/convolver.cc \ skia/ext/google_logging.cc \ skia/ext/image_operations.cc \ @@ -96,12 +96,15 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ @@ -198,12 +201,15 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ diff --git a/skia/skia_chrome.target.linux-x86.mk b/skia/skia_chrome.target.linux-x86.mk index 0ac48de34f..e0b7783068 100644 --- a/skia/skia_chrome.target.linux-x86.mk +++ b/skia/skia_chrome.target.linux-x86.mk @@ -30,7 +30,7 @@ GYP_COPIED_SOURCE_ORIGIN_DIRS := \ LOCAL_SRC_FILES := \ skia/ext/analysis_canvas.cc \ skia/ext/benchmarking_canvas.cc \ - skia/ext/bitmap_platform_device_android.cc \ + skia/ext/bitmap_platform_device_skia.cc \ skia/ext/convolver.cc \ skia/ext/google_logging.cc \ skia/ext/image_operations.cc \ @@ -98,12 +98,15 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ @@ -203,12 +206,15 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_USE_POSIX_THREADS' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ diff --git a/skia/skia_chrome_opts.target.darwin-mips.mk b/skia/skia_chrome_opts.target.darwin-mips.mk index 22655de16e..947a2aa7ef 100644 --- a/skia/skia_chrome_opts.target.darwin-mips.mk +++ b/skia/skia_chrome_opts.target.darwin-mips.mk @@ -77,6 +77,7 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -161,6 +162,7 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_chrome_opts.target.darwin-x86.mk b/skia/skia_chrome_opts.target.darwin-x86.mk index 8207403fb0..83ee85c277 100644 --- a/skia/skia_chrome_opts.target.darwin-x86.mk +++ b/skia/skia_chrome_opts.target.darwin-x86.mk @@ -78,6 +78,7 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -164,6 +165,7 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_chrome_opts.target.linux-mips.mk b/skia/skia_chrome_opts.target.linux-mips.mk index 22655de16e..947a2aa7ef 100644 --- a/skia/skia_chrome_opts.target.linux-mips.mk +++ b/skia/skia_chrome_opts.target.linux-mips.mk @@ -77,6 +77,7 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -161,6 +162,7 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_chrome_opts.target.linux-x86.mk b/skia/skia_chrome_opts.target.linux-x86.mk index 8207403fb0..83ee85c277 100644 --- a/skia/skia_chrome_opts.target.linux-x86.mk +++ b/skia/skia_chrome_opts.target.linux-x86.mk @@ -78,6 +78,7 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -164,6 +165,7 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_common.gypi b/skia/skia_common.gypi index 03eade8887..0f5f976724 100644 --- a/skia/skia_common.gypi +++ b/skia/skia_common.gypi @@ -16,6 +16,11 @@ ['exclude', '_android\\.(cc|cpp)$'], ], }], + [ 'OS == "android"', { + 'defines': [ + 'SK_FONTHOST_DOES_NOT_USE_FONTMGR', + ], + }], [ 'OS != "ios"', { 'sources/': [ ['exclude', '_ios\\.(cc|cpp|mm?)$'], @@ -29,12 +34,18 @@ [ 'OS != "win"', { 'sources/': [ ['exclude', '_win\\.(cc|cpp)$'] ], }], - [ 'use_glib == 0', { + [ 'desktop_linux == 0 and chromeos == 0', { 'sources/': [ ['exclude', '_linux\\.(cc|cpp)$'] ], }], + [ 'use_cairo == 0', { + 'sources/': [ ['exclude', '_cairo\\.(cc|cpp)$'] ], + }], ], - 'direct_dependent_settings': { + # We would prefer this to be direct_dependent_settings, + # however we currently have no means to enforce that direct dependents + # re-export if they include Skia headers in their public headers. + 'all_dependent_settings': { 'include_dirs': [ '..', 'config', diff --git a/skia/skia_library.gypi b/skia/skia_library.gypi index 73cf542692..745133e998 100644 --- a/skia/skia_library.gypi +++ b/skia/skia_library.gypi @@ -43,6 +43,7 @@ 'SK_ENABLE_LEGACY_API_ALIASING=1', 'SK_ATTR_DEPRECATED=SK_NOTHING_ARG1', 'SK_SUPPORT_LEGACY_COLORTYPE=1', + 'GR_GL_IGNORE_ES3_MSAA=0', ], 'default_font_cache_limit%': '(20*1024*1024)', @@ -268,11 +269,10 @@ '../third_party/skia/src/opts/opts_check_SSE2.cpp' ], }], - [ 'use_glib == 1', { + [ 'desktop_linux == 1 or chromeos == 1', { 'dependencies': [ '../build/linux/system.gyp:fontconfig', '../build/linux/system.gyp:freetype2', - '../build/linux/system.gyp:pangocairo', '../third_party/icu/icu.gyp:icuuc', ], 'cflags': [ @@ -280,13 +280,18 @@ '-Wno-unused-function', ], }], - [ 'use_glib == 0', { + [ 'use_cairo == 1', { + 'dependencies': [ + '../build/linux/system.gyp:pangocairo', + ], + }], + [ 'OS=="win" or OS=="mac" or OS=="ios" or OS=="android"', { 'sources!': [ '../third_party/skia/src/ports/SkFontConfigInterface_direct.cpp', '../third_party/skia/src/fonts/SkFontMgr_fontconfig.cpp', ], }], - [ 'use_glib == 0 and OS != "android"', { + [ 'OS=="win" or OS=="mac" or OS=="ios"', { 'sources!': [ '../third_party/skia/src/ports/SkFontHost_FreeType.cpp', '../third_party/skia/src/ports/SkFontHost_FreeType_common.cpp', @@ -373,9 +378,6 @@ '../third_party/skia/include/utils/win', '../third_party/skia/src/utils/win', ], - 'defines': [ - 'SK_FONTHOST_USES_FONTMGR', - ], },{ # not 'OS == "win"' 'sources!': [ '../third_party/skia/src/ports/SkFontHost_win_dw.cpp', @@ -400,6 +402,15 @@ '-Wstring-conversion', ], }], + # On windows, GDI handles are a scarse system-wide resource so we have to keep + # the glyph cache, which holds up to 4 GDI handles per entry, to a fairly small + # size. + # http://crbug.com/314387 + [ 'OS == "win"', { + 'defines': [ + 'SK_DEFAULT_FONT_CACHE_COUNT_LIMIT=256', + ], + }], ], 'target_conditions': [ # Pull in specific Mac files for iOS (which have been filtered out @@ -432,9 +443,9 @@ 'IGNORE_ROT_AA_RECT_OPT', - 'SK_IGNORE_QUAD_RR_CORNERS_OPT', + 'SK_IGNORE_BLURRED_RRECT_OPT', - 'SKIA_IGNORE_GPU_MIPMAPS', + 'SK_IGNORE_QUAD_RR_CORNERS_OPT', # this flag forces Skia not to use typographic metrics with GDI. 'SK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS', diff --git a/skia/skia_library.target.darwin-arm.mk b/skia/skia_library.target.darwin-arm.mk index 217141a401..70ff52e618 100644 --- a/skia/skia_library.target.darwin-arm.mk +++ b/skia/skia_library.target.darwin-arm.mk @@ -101,6 +101,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/core/SkDevice.cpp \ third_party/skia/src/core/SkDeviceLooper.cpp \ third_party/skia/src/core/SkDeviceProfile.cpp \ + third_party/skia/src/lazy/SkDiscardablePixelRef.cpp \ third_party/skia/src/core/SkDither.cpp \ third_party/skia/src/core/SkDraw.cpp \ third_party/skia/src/core/SkDrawLooper.cpp \ @@ -207,6 +208,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/lazy/SkLruImageCache.cpp \ third_party/skia/src/lazy/SkPurgeableMemoryBlock_common.cpp \ third_party/skia/src/lazy/SkPurgeableImageCache.cpp \ + third_party/skia/src/lazy/SkCachingPixelRef.cpp \ + third_party/skia/src/lazy/SkLazyCachingPixelRef.cpp \ third_party/skia/src/pathops/SkAddIntersections.cpp \ third_party/skia/src/pathops/SkDCubicIntersection.cpp \ third_party/skia/src/pathops/SkDCubicLineIntersection.cpp \ @@ -430,19 +433,21 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ @@ -450,6 +455,7 @@ MY_DEFS_Debug := \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ @@ -555,19 +561,21 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ @@ -575,6 +583,7 @@ MY_DEFS_Release := \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ diff --git a/skia/skia_library.target.darwin-mips.mk b/skia/skia_library.target.darwin-mips.mk index d184f5dc14..dd0f3cb4d0 100644 --- a/skia/skia_library.target.darwin-mips.mk +++ b/skia/skia_library.target.darwin-mips.mk @@ -101,6 +101,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/core/SkDevice.cpp \ third_party/skia/src/core/SkDeviceLooper.cpp \ third_party/skia/src/core/SkDeviceProfile.cpp \ + third_party/skia/src/lazy/SkDiscardablePixelRef.cpp \ third_party/skia/src/core/SkDither.cpp \ third_party/skia/src/core/SkDraw.cpp \ third_party/skia/src/core/SkDrawLooper.cpp \ @@ -207,6 +208,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/lazy/SkLruImageCache.cpp \ third_party/skia/src/lazy/SkPurgeableMemoryBlock_common.cpp \ third_party/skia/src/lazy/SkPurgeableImageCache.cpp \ + third_party/skia/src/lazy/SkCachingPixelRef.cpp \ + third_party/skia/src/lazy/SkLazyCachingPixelRef.cpp \ third_party/skia/src/pathops/SkAddIntersections.cpp \ third_party/skia/src/pathops/SkDCubicIntersection.cpp \ third_party/skia/src/pathops/SkDCubicLineIntersection.cpp \ @@ -429,25 +432,28 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ @@ -553,25 +559,28 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ diff --git a/skia/skia_library.target.darwin-x86.mk b/skia/skia_library.target.darwin-x86.mk index 1bc1cfd7e7..0cd7e397e1 100644 --- a/skia/skia_library.target.darwin-x86.mk +++ b/skia/skia_library.target.darwin-x86.mk @@ -102,6 +102,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/core/SkDevice.cpp \ third_party/skia/src/core/SkDeviceLooper.cpp \ third_party/skia/src/core/SkDeviceProfile.cpp \ + third_party/skia/src/lazy/SkDiscardablePixelRef.cpp \ third_party/skia/src/core/SkDither.cpp \ third_party/skia/src/core/SkDraw.cpp \ third_party/skia/src/core/SkDrawLooper.cpp \ @@ -208,6 +209,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/lazy/SkLruImageCache.cpp \ third_party/skia/src/lazy/SkPurgeableMemoryBlock_common.cpp \ third_party/skia/src/lazy/SkPurgeableImageCache.cpp \ + third_party/skia/src/lazy/SkCachingPixelRef.cpp \ + third_party/skia/src/lazy/SkLazyCachingPixelRef.cpp \ third_party/skia/src/pathops/SkAddIntersections.cpp \ third_party/skia/src/pathops/SkDCubicIntersection.cpp \ third_party/skia/src/pathops/SkDCubicLineIntersection.cpp \ @@ -432,25 +435,28 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ @@ -559,25 +565,28 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ diff --git a/skia/skia_library.target.linux-arm.mk b/skia/skia_library.target.linux-arm.mk index 217141a401..70ff52e618 100644 --- a/skia/skia_library.target.linux-arm.mk +++ b/skia/skia_library.target.linux-arm.mk @@ -101,6 +101,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/core/SkDevice.cpp \ third_party/skia/src/core/SkDeviceLooper.cpp \ third_party/skia/src/core/SkDeviceProfile.cpp \ + third_party/skia/src/lazy/SkDiscardablePixelRef.cpp \ third_party/skia/src/core/SkDither.cpp \ third_party/skia/src/core/SkDraw.cpp \ third_party/skia/src/core/SkDrawLooper.cpp \ @@ -207,6 +208,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/lazy/SkLruImageCache.cpp \ third_party/skia/src/lazy/SkPurgeableMemoryBlock_common.cpp \ third_party/skia/src/lazy/SkPurgeableImageCache.cpp \ + third_party/skia/src/lazy/SkCachingPixelRef.cpp \ + third_party/skia/src/lazy/SkLazyCachingPixelRef.cpp \ third_party/skia/src/pathops/SkAddIntersections.cpp \ third_party/skia/src/pathops/SkDCubicIntersection.cpp \ third_party/skia/src/pathops/SkDCubicLineIntersection.cpp \ @@ -430,19 +433,21 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ @@ -450,6 +455,7 @@ MY_DEFS_Debug := \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ @@ -555,19 +561,21 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ @@ -575,6 +583,7 @@ MY_DEFS_Release := \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ diff --git a/skia/skia_library.target.linux-mips.mk b/skia/skia_library.target.linux-mips.mk index d184f5dc14..dd0f3cb4d0 100644 --- a/skia/skia_library.target.linux-mips.mk +++ b/skia/skia_library.target.linux-mips.mk @@ -101,6 +101,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/core/SkDevice.cpp \ third_party/skia/src/core/SkDeviceLooper.cpp \ third_party/skia/src/core/SkDeviceProfile.cpp \ + third_party/skia/src/lazy/SkDiscardablePixelRef.cpp \ third_party/skia/src/core/SkDither.cpp \ third_party/skia/src/core/SkDraw.cpp \ third_party/skia/src/core/SkDrawLooper.cpp \ @@ -207,6 +208,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/lazy/SkLruImageCache.cpp \ third_party/skia/src/lazy/SkPurgeableMemoryBlock_common.cpp \ third_party/skia/src/lazy/SkPurgeableImageCache.cpp \ + third_party/skia/src/lazy/SkCachingPixelRef.cpp \ + third_party/skia/src/lazy/SkLazyCachingPixelRef.cpp \ third_party/skia/src/pathops/SkAddIntersections.cpp \ third_party/skia/src/pathops/SkDCubicIntersection.cpp \ third_party/skia/src/pathops/SkDCubicLineIntersection.cpp \ @@ -429,25 +432,28 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ @@ -553,25 +559,28 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ diff --git a/skia/skia_library.target.linux-x86.mk b/skia/skia_library.target.linux-x86.mk index 1bc1cfd7e7..0cd7e397e1 100644 --- a/skia/skia_library.target.linux-x86.mk +++ b/skia/skia_library.target.linux-x86.mk @@ -102,6 +102,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/core/SkDevice.cpp \ third_party/skia/src/core/SkDeviceLooper.cpp \ third_party/skia/src/core/SkDeviceProfile.cpp \ + third_party/skia/src/lazy/SkDiscardablePixelRef.cpp \ third_party/skia/src/core/SkDither.cpp \ third_party/skia/src/core/SkDraw.cpp \ third_party/skia/src/core/SkDrawLooper.cpp \ @@ -208,6 +209,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/lazy/SkLruImageCache.cpp \ third_party/skia/src/lazy/SkPurgeableMemoryBlock_common.cpp \ third_party/skia/src/lazy/SkPurgeableImageCache.cpp \ + third_party/skia/src/lazy/SkCachingPixelRef.cpp \ + third_party/skia/src/lazy/SkLazyCachingPixelRef.cpp \ third_party/skia/src/pathops/SkAddIntersections.cpp \ third_party/skia/src/pathops/SkDCubicIntersection.cpp \ third_party/skia/src/pathops/SkDCubicLineIntersection.cpp \ @@ -432,25 +435,28 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ @@ -559,25 +565,28 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-DSK_ENABLE_INST_COUNT=0' \ '-DSK_SUPPORT_GPU=1' \ '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ '-DSK_SUPPORT_LEGACY_COLORTYPE=1' \ + '-DGR_GL_IGNORE_ES3_MSAA=0' \ '-DSK_BUILD_FOR_ANDROID' \ '-DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0' \ '-DSK_DISABLE_OFFSETIMAGEFILTER_OPTIMIZATION' \ '-DSK_DISABLE_PIXELREF_LOCKCOUNT_BALANCE_CHECK' \ '-DIGNORE_ROT_AA_RECT_OPT' \ + '-DSK_IGNORE_BLURRED_RRECT_OPT' \ '-DSK_IGNORE_QUAD_RR_CORNERS_OPT' \ - '-DSKIA_IGNORE_GPU_MIPMAPS' \ '-DSK_GDI_ALWAYS_USE_TEXTMETRICS_FOR_FONT_METRICS' \ '-DSK_DEFAULT_FONT_CACHE_LIMIT=(1*1024*1024)' \ '-DSK_GAMMA_APPLY_TO_A8' \ '-DSK_GAMMA_EXPONENT=1.4' \ '-DSK_GAMMA_CONTRAST=0.0' \ '-DSK_USE_POSIX_THREADS' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ diff --git a/skia/skia_library_opts.gyp b/skia/skia_library_opts.gyp index 6c682b4d2c..888fdc0219 100644 --- a/skia/skia_library_opts.gyp +++ b/skia/skia_library_opts.gyp @@ -51,6 +51,7 @@ '../third_party/skia/src/opts/SkXfermode_opts_none.cpp', '../third_party/skia/src/opts/SkBitmapFilter_opts_SSE2.cpp', '../third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp', + '../third_party/skia/src/opts/SkBlurImage_opts_SSE2.cpp', ], 'dependencies': [ 'skia_opts_ssse3', @@ -109,6 +110,7 @@ '../third_party/skia/src/opts/SkUtils_opts_none.cpp', '../third_party/skia/src/opts/SkXfermode_opts_none.cpp', '../third_party/skia/src/opts/SkMorphology_opts_none.cpp', + '../third_party/skia/src/opts/SkBlurImage_opts_none.cpp', ], }], [ 'target_arch == "arm" and arm_version >= 6', { @@ -118,7 +120,7 @@ '../third_party/skia/src/opts/SkBlitRow_opts_arm.h', '../third_party/skia/src/opts/opts_check_arm.cpp', '../third_party/skia/src/opts/SkXfermode_opts_none.cpp', - '../third_party/skia/src/opts/SkMorphology_opts_none.cpp', + '../third_party/skia/src/opts/SkBlurImage_opts_none.cpp', ], }], [ 'target_arch == "mipsel"',{ @@ -132,6 +134,7 @@ '../third_party/skia/src/opts/SkUtils_opts_none.cpp', '../third_party/skia/src/opts/SkXfermode_opts_none.cpp', '../third_party/skia/src/opts/SkMorphology_opts_none.cpp', + '../third_party/skia/src/opts/SkBlurImage_opts_none.cpp', ], }], ], @@ -195,6 +198,7 @@ '../third_party/skia/src/opts/SkUtils_opts_none.cpp', '../third_party/skia/src/opts/SkXfermode_opts_none.cpp', '../third_party/skia/src/opts/SkMorphology_opts_none.cpp', + '../third_party/skia/src/opts/SkBlurImage_opts_none.cpp', ], }, ], @@ -239,6 +243,7 @@ '../third_party/skia/src/opts/SkBitmapProcState_matrix_repeat_neon.h', '../third_party/skia/src/opts/SkBlitRow_opts_arm_neon.cpp', '../third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp', + '../third_party/skia/src/opts/SkMorphology_opts_neon.cpp', ], 'conditions': [ ['arm_neon == 1', { diff --git a/skia/skia_opts.target.darwin-arm.mk b/skia/skia_opts.target.darwin-arm.mk index 6571b768e6..9d13fa4204 100644 --- a/skia/skia_opts.target.darwin-arm.mk +++ b/skia/skia_opts.target.darwin-arm.mk @@ -28,7 +28,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkBlitRow_opts_arm.cpp \ third_party/skia/src/opts/opts_check_arm.cpp \ third_party/skia/src/opts/SkXfermode_opts_none.cpp \ - third_party/skia/src/opts/SkMorphology_opts_none.cpp + third_party/skia/src/opts/SkBlurImage_opts_none.cpp # Flags passed to both C and C++ files. @@ -83,7 +83,9 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -171,7 +173,9 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts.target.darwin-mips.mk b/skia/skia_opts.target.darwin-mips.mk index 828bdeead0..15deb319d0 100644 --- a/skia/skia_opts.target.darwin-mips.mk +++ b/skia/skia_opts.target.darwin-mips.mk @@ -27,7 +27,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkBlitRow_opts_none.cpp \ third_party/skia/src/opts/SkUtils_opts_none.cpp \ third_party/skia/src/opts/SkXfermode_opts_none.cpp \ - third_party/skia/src/opts/SkMorphology_opts_none.cpp + third_party/skia/src/opts/SkMorphology_opts_none.cpp \ + third_party/skia/src/opts/SkBlurImage_opts_none.cpp # Flags passed to both C and C++ files. @@ -81,6 +82,8 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -167,6 +170,8 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts.target.darwin-x86.mk b/skia/skia_opts.target.darwin-x86.mk index 56a413aa90..038114c241 100644 --- a/skia/skia_opts.target.darwin-x86.mk +++ b/skia/skia_opts.target.darwin-x86.mk @@ -28,7 +28,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkUtils_opts_SSE2.cpp \ third_party/skia/src/opts/SkXfermode_opts_none.cpp \ third_party/skia/src/opts/SkBitmapFilter_opts_SSE2.cpp \ - third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp + third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp \ + third_party/skia/src/opts/SkBlurImage_opts_SSE2.cpp # Flags passed to both C and C++ files. @@ -83,6 +84,8 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -171,6 +174,8 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts.target.linux-arm.mk b/skia/skia_opts.target.linux-arm.mk index 6571b768e6..9d13fa4204 100644 --- a/skia/skia_opts.target.linux-arm.mk +++ b/skia/skia_opts.target.linux-arm.mk @@ -28,7 +28,7 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkBlitRow_opts_arm.cpp \ third_party/skia/src/opts/opts_check_arm.cpp \ third_party/skia/src/opts/SkXfermode_opts_none.cpp \ - third_party/skia/src/opts/SkMorphology_opts_none.cpp + third_party/skia/src/opts/SkBlurImage_opts_none.cpp # Flags passed to both C and C++ files. @@ -83,7 +83,9 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -171,7 +173,9 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts.target.linux-mips.mk b/skia/skia_opts.target.linux-mips.mk index 828bdeead0..15deb319d0 100644 --- a/skia/skia_opts.target.linux-mips.mk +++ b/skia/skia_opts.target.linux-mips.mk @@ -27,7 +27,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkBlitRow_opts_none.cpp \ third_party/skia/src/opts/SkUtils_opts_none.cpp \ third_party/skia/src/opts/SkXfermode_opts_none.cpp \ - third_party/skia/src/opts/SkMorphology_opts_none.cpp + third_party/skia/src/opts/SkMorphology_opts_none.cpp \ + third_party/skia/src/opts/SkBlurImage_opts_none.cpp # Flags passed to both C and C++ files. @@ -81,6 +82,8 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -167,6 +170,8 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts.target.linux-x86.mk b/skia/skia_opts.target.linux-x86.mk index 56a413aa90..038114c241 100644 --- a/skia/skia_opts.target.linux-x86.mk +++ b/skia/skia_opts.target.linux-x86.mk @@ -28,7 +28,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkUtils_opts_SSE2.cpp \ third_party/skia/src/opts/SkXfermode_opts_none.cpp \ third_party/skia/src/opts/SkBitmapFilter_opts_SSE2.cpp \ - third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp + third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp \ + third_party/skia/src/opts/SkBlurImage_opts_SSE2.cpp # Flags passed to both C and C++ files. @@ -83,6 +84,8 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -171,6 +174,8 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts_neon.target.darwin-arm.mk b/skia/skia_opts_neon.target.darwin-arm.mk index 9f26c6f34c..63a8a1a1e4 100644 --- a/skia/skia_opts_neon.target.darwin-arm.mk +++ b/skia/skia_opts_neon.target.darwin-arm.mk @@ -27,7 +27,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkBitmapProcState_arm_neon.cpp \ third_party/skia/src/opts/SkBitmapProcState_matrixProcs_neon.cpp \ third_party/skia/src/opts/SkBlitRow_opts_arm_neon.cpp \ - third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp + third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp \ + third_party/skia/src/opts/SkMorphology_opts_neon.cpp # Flags passed to both C and C++ files. @@ -82,7 +83,9 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -170,7 +173,9 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts_neon.target.linux-arm.mk b/skia/skia_opts_neon.target.linux-arm.mk index 9f26c6f34c..63a8a1a1e4 100644 --- a/skia/skia_opts_neon.target.linux-arm.mk +++ b/skia/skia_opts_neon.target.linux-arm.mk @@ -27,7 +27,8 @@ LOCAL_SRC_FILES := \ third_party/skia/src/opts/SkBitmapProcState_arm_neon.cpp \ third_party/skia/src/opts/SkBitmapProcState_matrixProcs_neon.cpp \ third_party/skia/src/opts/SkBlitRow_opts_arm_neon.cpp \ - third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp + third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp \ + third_party/skia/src/opts/SkMorphology_opts_neon.cpp # Flags passed to both C and C++ files. @@ -82,7 +83,9 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -170,7 +173,9 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ '-D__ARM_HAVE_OPTIONAL_NEON_SUPPORT' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts_ssse3.target.darwin-x86.mk b/skia/skia_opts_ssse3.target.darwin-x86.mk index 1c23ae0f8a..0e707dcfae 100644 --- a/skia/skia_opts_ssse3.target.darwin-x86.mk +++ b/skia/skia_opts_ssse3.target.darwin-x86.mk @@ -78,6 +78,8 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -166,6 +168,8 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_opts_ssse3.target.linux-x86.mk b/skia/skia_opts_ssse3.target.linux-x86.mk index 1c23ae0f8a..0e707dcfae 100644 --- a/skia/skia_opts_ssse3.target.linux-x86.mk +++ b/skia/skia_opts_ssse3.target.linux-x86.mk @@ -78,6 +78,8 @@ MY_DEFS_Debug := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ @@ -166,6 +168,8 @@ MY_DEFS_Release := \ '-DUSE_OPENSSL=1' \ '-DENABLE_EGLIMAGE=1' \ '-DCLD_VERSION=1' \ + '-DENABLE_MANAGED_USERS=1' \ + '-DSK_FONTHOST_DOES_NOT_USE_FONTMGR' \ '-DANDROID' \ '-D__GNU_SOURCE=1' \ '-DUSE_STLPORT=1' \ diff --git a/skia/skia_test_expectations.txt b/skia/skia_test_expectations.txt index 49253794fa..32292569e1 100644 --- a/skia/skia_test_expectations.txt +++ b/skia/skia_test_expectations.txt @@ -48,73 +48,7 @@ # # START OVERRIDES HERE -# The Skia roll to r12012 introduced imperceptible image differences in the following tests: -crbug.com/313226 compositing/geometry/layer-due-to-layer-children.html [ ImageOnlyFailure ] -crbug.com/313226 compositing/geometry/vertical-scroll-composited.html [ ImageOnlyFailure ] -crbug.com/313226 compositing/overflow/nested-render-surfaces-with-rotation.html [ ImageOnlyFailure ] -crbug.com/313226 compositing/perpendicular-layer-sorting.html [ ImageOnlyFailure ] -crbug.com/313226 compositing/reflections/animation-inside-reflection.html [ ImageOnlyFailure ] -crbug.com/313226 compositing/reflections/transform-inside-reflection.html [ ImageOnlyFailure ] -crbug.com/313226 fast/sub-pixel/transformed-iframe-copy-on-scroll.html [ ImageOnlyFailure ] -crbug.com/313226 transforms/3d/point-mapping/3d-point-mapping-deep.html [ ImageOnlyFailure ] -crbug.com/313226 transforms/3d/point-mapping/3d-point-mapping-origins.html [ ImageOnlyFailure ] -crbug.com/313226 transforms/3d/point-mapping/3d-point-mapping-preserve-3d.html [ ImageOnlyFailure ] -crbug.com/313226 virtual/gpu/compositedscrolling/overflow/nested-render-surfaces-with-rotation.html [ ImageOnlyFailure ] -crbug.com/313226 compositing/geometry/fixed-position-transform-composited-page-scale-down.html [ ImageOnlyFailure ] -crbug.com/313226 transforms/3d/general/perspective-units.html [ ImageOnlyFailure ] -crbug.com/313226 virtual/softwarecompositing/geometry/vertical-scroll-composited.html [ ImageOnlyFailure ] -crbug.com/313226 virtual/softwarecompositing/huge-layer-rotated.html [ ImageOnlyFailure ] -crbug.com/313226 virtual/softwarecompositing/lots-of-img-layers-with-opacity.html [ ImageOnlyFailure ] -crbug.com/313226 virtual/softwarecompositing/lots-of-img-layers.html [ ImageOnlyFailure ] -crbug.com/313226 virtual/softwarecompositing/tiny-layer-rotated.html [ ImageOnlyFailure ] - # the Skia roll to 12018 again altered the way roundrects are drawn -crbug.com/314499 fast/backgrounds/border-radius-split-background-image.html [ ImageOnlyFailure ] -crbug.com/314499 fast/backgrounds/border-radius-split-background.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-complex-inner.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-inset-outset.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-mask-canvas-border.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-mask-canvas.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-mask-video-ratio.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-mask-video-shadow.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-mask-video.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-percent.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-wide-border-05.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-with-box-shadow-01.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-radius-with-box-shadow.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-shadow-large-radius.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/border-styles-split.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/borderRadiusAllStylesAllCorners.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/borderRadiusArcs01.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/borderRadiusMultiColors01.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/borderRadiusMultiColors02.html [ ImageOnlyFailure ] -crbug.com/314499 fast/borders/borderRadiusSlope.html [ ImageOnlyFailure ] -crbug.com/314499 fast/box-shadow/shadow-tiling-artifact.html [ ImageOnlyFailure ] -crbug.com/314499 fast/canvas/arc360.html [ ImageOnlyFailure ] -crbug.com/314499 fast/canvas/canvas-arc-circumference.html [ ImageOnlyFailure ] -crbug.com/314499 fast/canvas/canvas-composite-transformclip.html [ ImageOnlyFailure ] -crbug.com/314499 fast/canvas/canvas-composite.html [ ImageOnlyFailure ] -crbug.com/314499 fast/canvas/canvas-ellipse-circumference-fill.html [ ImageOnlyFailure ] -crbug.com/314499 fast/canvas/canvas-ellipse-circumference.html [ ImageOnlyFailure ] crbug.com/314499 fast/canvas/image-object-in-canvas.html [ ImageOnlyFailure ] -crbug.com/314499 fast/css/background-clip-radius-values.html [ ImageOnlyFailure ] -crbug.com/314499 fast/css/box-shadow-and-border-radius.html [ ImageOnlyFailure ] -crbug.com/314499 fast/replaced/border-radius-clip-content-edge.html [ ImageOnlyFailure ] -crbug.com/314499 fast/writing-mode/border-styles-vertical-lr.html [ ImageOnlyFailure ] -crbug.com/314499 fast/writing-mode/border-styles-vertical-rl.html [ ImageOnlyFailure ] -crbug.com/314499 ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-001.htm [ ImageOnlyFailure ] -crbug.com/314499 ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-002.htm [ ImageOnlyFailure ] -crbug.com/314499 ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-004.htm [ ImageOnlyFailure ] -crbug.com/314499 ietestcenter/css3/bordersbackgrounds/border-top-right-radius-values-004.htm [ ImageOnlyFailure ] -crbug.com/314499 media/audio-repaint.html [ ImageOnlyFailure ] -crbug.com/314499 svg/W3C-SVG-1.1/paths-data-10-t.svg [ ImageOnlyFailure ] -crbug.com/314499 svg/custom/svg-fonts-in-html.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/arc360.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/canvas-arc-circumference.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/canvas-composite-transformclip.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/canvas-composite.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/canvas-ellipse-circumference-fill.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/canvas-ellipse-circumference.html [ ImageOnlyFailure ] -crbug.com/314499 virtual/gpu/fast/canvas/image-object-in-canvas.html [ ImageOnlyFailure ] # END OVERRIDES HERE (this line ensures that the file is newline-terminated) diff --git a/skia/tools/filter_fuzz_stub/filter_fuzz_stub.cc b/skia/tools/filter_fuzz_stub/filter_fuzz_stub.cc new file mode 100644 index 0000000000..1cb4d7f6eb --- /dev/null +++ b/skia/tools/filter_fuzz_stub/filter_fuzz_stub.cc @@ -0,0 +1,93 @@ +// Copyright 2013 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "base/file_util.h" +#include "base/logging.h" +#include "third_party/skia/include/core/SkBitmapDevice.h" +#include "third_party/skia/include/core/SkCanvas.h" +#include "third_party/skia/include/core/SkFlattenableSerialization.h" +#include "third_party/skia/include/core/SkImageFilter.h" + +namespace { + +static const int BitmapSize = 24; + +bool ReadTestCase(const char* filename, std::string* ipc_filter_message) { + base::FilePath filepath = base::FilePath::FromUTF8Unsafe(filename); + + if (!base::ReadFileToString(filepath, ipc_filter_message)) { + LOG(ERROR) << filename << ": couldn't read file."; + return false; + } + + return true; +} + +void RunTestCase(std::string& ipc_filter_message, SkBitmap& bitmap, + SkCanvas* canvas) { + // This call shouldn't crash or cause ASAN to flag any memory issues + // If nothing bad happens within this call, everything is fine + SkFlattenable* flattenable = SkValidatingDeserializeFlattenable( + ipc_filter_message.c_str(), ipc_filter_message.size(), + SkImageFilter::GetFlattenableType()); + + // Adding some info, but the test passed if we got here without any trouble + if (flattenable != NULL) { + LOG(INFO) << "Valid stream detected."; + // Let's see if using the filters can cause any trouble... + SkPaint paint; + paint.setImageFilter(static_cast<SkImageFilter*>(flattenable))->unref(); + canvas->save(); + canvas->clipRect(SkRect::MakeXYWH( + 0, 0, SkIntToScalar(BitmapSize), SkIntToScalar(BitmapSize))); + + // This call shouldn't crash or cause ASAN to flag any memory issues + // If nothing bad happens within this call, everything is fine + canvas->drawBitmap(bitmap, 0, 0, &paint); + + LOG(INFO) << "Filter DAG rendered successfully"; + canvas->restore(); + } else { + LOG(INFO) << "Invalid stream detected."; + } +} + +bool ReadAndRunTestCase(const char* filename, SkBitmap& bitmap, + SkCanvas* canvas) { + std::string ipc_filter_message; + + LOG(INFO) << "Test case: " << filename; + + // ReadTestCase will print a useful error message if it fails. + if (!ReadTestCase(filename, &ipc_filter_message)) + return false; + + RunTestCase(ipc_filter_message, bitmap, canvas); + + return true; +} + +} + +int main(int argc, char** argv) { + int ret = 0; + + SkBitmap bitmap; + bitmap.setConfig(SkBitmap::kARGB_8888_Config, BitmapSize, BitmapSize); + bitmap.allocPixels(); + SkBitmapDevice device(bitmap); + SkCanvas canvas(&device); + canvas.clear(0x00000000); + + for (int i = 1; i < argc; i++) + if (!ReadAndRunTestCase(argv[i], bitmap, &canvas)) + ret = 2; + + // Cluster-Fuzz likes "#EOF" as the last line of output to help distinguish + // successful runs from crashes. + printf("#EOF\n"); + + return ret; +} + |