diff options
-rw-r--r-- | DEPS | 3 | ||||
-rw-r--r-- | dm/DM.cpp | 5 | ||||
-rw-r--r-- | gyp/libwebp.gyp | 51 | ||||
-rw-r--r-- | third_party/libwebp/webp/config.h | 6 |
4 files changed, 9 insertions, 56 deletions
@@ -14,8 +14,7 @@ deps = { "third_party/externals/harfbuzz": "https://skia.googlesource.com/third_party/harfbuzz.git@0.9.35", "third_party/externals/jsoncpp" : "https://chromium.googlesource.com/external/jsoncpp/jsoncpp.git@1afff032c83e26ddf7f2776e8b43de5ad666c1fa", "third_party/externals/libjpeg" : "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git@034e9a9747e0983bc19808ea70e469bc8342081f", - # Slightly ahead of v 0.4.3, to include the fix for skbug.com/4038 - "third_party/externals/libwebp" : "https://chromium.googlesource.com/webm/libwebp.git@7df93893dcb73dc45733ab4518ce5ca322c25680", + "third_party/externals/libwebp" : "https://chromium.googlesource.com/webm/libwebp.git@v0.4.3", "third_party/externals/nanomsg" : "https://skia.googlesource.com/third_party/nanomsg.git@0.4-beta", "third_party/externals/zlib" : "https://chromium.googlesource.com/chromium/src/third_party/zlib@4ba7cdd0e7bf49d671645264f839838fc56e1492", # NOTE: If we update libpng, we may need to update the generated file at third_party/libpng/pnglibconf.h @@ -215,6 +215,11 @@ static void push_codec_srcs(Path path) { const float scales[] = { 0.125f, 0.25f, 0.375f, 0.5f, 0.625f, 0.750f, 0.875f, 1.0f }; for (float scale : scales) { + if (scale != 1.0f && (path.endsWith(".webp") || path.endsWith(".WEBP"))) { + // FIXME: skbug.com/4038 Scaling webp seems to leave some pixels uninitialized/ + // compute their colors based on uninitialized values. + continue; + } // Build additional test cases for images that decode natively to non-canvas types switch(codec->getInfo().colorType()) { case kGray_8_SkColorType: diff --git a/gyp/libwebp.gyp b/gyp/libwebp.gyp index 0122be6a8c..fc6f46c309 100644 --- a/gyp/libwebp.gyp +++ b/gyp/libwebp.gyp @@ -66,33 +66,18 @@ ], 'sources': [ '../third_party/externals/libwebp/src/dsp/alpha_processing.c', - '../third_party/externals/libwebp/src/dsp/alpha_processing_mips_dsp_r2.c', '../third_party/externals/libwebp/src/dsp/alpha_processing_sse2.c', - '../third_party/externals/libwebp/src/dsp/alpha_processing_sse41.c', '../third_party/externals/libwebp/src/dsp/cpu.c', '../third_party/externals/libwebp/src/dsp/dec.c', '../third_party/externals/libwebp/src/dsp/dec_clip_tables.c', - '../third_party/externals/libwebp/src/dsp/dec_mips32.c', - '../third_party/externals/libwebp/src/dsp/dec_mips_dsp_r2.c', '../third_party/externals/libwebp/src/dsp/dec_sse2.c', - '../third_party/externals/libwebp/src/dsp/dec_sse41.c', '../third_party/externals/libwebp/src/dsp/enc.c', '../third_party/externals/libwebp/src/dsp/enc_sse2.c', - '../third_party/externals/libwebp/src/dsp/filters.c', - '../third_party/externals/libwebp/src/dsp/filters_mips_dsp_r2.c', - '../third_party/externals/libwebp/src/dsp/filters_sse2.c', '../third_party/externals/libwebp/src/dsp/lossless.c', - '../third_party/externals/libwebp/src/dsp/lossless_mips_dsp_r2.c', '../third_party/externals/libwebp/src/dsp/lossless_sse2.c', - '../third_party/externals/libwebp/src/dsp/rescaler.c', - '../third_party/externals/libwebp/src/dsp/rescaler_mips32.c', - '../third_party/externals/libwebp/src/dsp/rescaler_mips_dsp_r2.c', '../third_party/externals/libwebp/src/dsp/upsampling.c', - '../third_party/externals/libwebp/src/dsp/upsampling_mips_dsp_r2.c', '../third_party/externals/libwebp/src/dsp/upsampling_sse2.c', '../third_party/externals/libwebp/src/dsp/yuv.c', - '../third_party/externals/libwebp/src/dsp/yuv_mips32.c', - '../third_party/externals/libwebp/src/dsp/yuv_mips_dsp_r2.c', '../third_party/externals/libwebp/src/dsp/yuv_sse2.c', ], 'cflags': [ '-w' ], @@ -136,35 +121,6 @@ ], }, { - 'target_name': 'libwebp_dsp_enc', - 'type': 'static_library', - 'includes': [ - 'libwebp_skia.gypi', - ], - 'include_dirs': [ - '../third_party/externals/libwebp', - ], - 'sources': [ - '../third_party/externals/libwebp/src/dsp/argb.c', - '../third_party/externals/libwebp/src/dsp/argb_mips_dsp_r2.c', - '../third_party/externals/libwebp/src/dsp/argb_sse2.c', - '../third_party/externals/libwebp/src/dsp/cost.c', - '../third_party/externals/libwebp/src/dsp/cost_mips32.c', - '../third_party/externals/libwebp/src/dsp/cost_mips_dsp_r2.c', - '../third_party/externals/libwebp/src/dsp/cost_sse2.c', - '../third_party/externals/libwebp/src/dsp/enc_avx2.c', - '../third_party/externals/libwebp/src/dsp/enc_mips32.c', - '../third_party/externals/libwebp/src/dsp/enc_mips_dsp_r2.c', - '../third_party/externals/libwebp/src/dsp/enc_sse41.c', - '../third_party/externals/libwebp/src/dsp/lossless_enc.c', - '../third_party/externals/libwebp/src/dsp/lossless_enc_mips32.c', - '../third_party/externals/libwebp/src/dsp/lossless_enc_mips_dsp_r2.c', - '../third_party/externals/libwebp/src/dsp/lossless_enc_neon.c', - '../third_party/externals/libwebp/src/dsp/lossless_enc_sse2.c', - '../third_party/externals/libwebp/src/dsp/lossless_enc_sse41.c', - ], - }, - { 'target_name': 'libwebp_enc', 'type': 'static_library', 'includes': [ @@ -173,9 +129,6 @@ 'include_dirs': [ '../third_party/externals/libwebp', ], - 'dependencies' : [ - 'libwebp_dsp_enc', - ], 'sources': [ '../third_party/externals/libwebp/src/enc/alpha.c', '../third_party/externals/libwebp/src/enc/analysis.c', @@ -186,12 +139,8 @@ '../third_party/externals/libwebp/src/enc/frame.c', '../third_party/externals/libwebp/src/enc/histogram.c', '../third_party/externals/libwebp/src/enc/iterator.c', - '../third_party/externals/libwebp/src/enc/near_lossless.c', '../third_party/externals/libwebp/src/enc/picture.c', '../third_party/externals/libwebp/src/enc/picture_csp.c', - '../third_party/externals/libwebp/src/enc/picture_psnr.c', - '../third_party/externals/libwebp/src/enc/picture_rescale.c', - '../third_party/externals/libwebp/src/enc/picture_tools.c', '../third_party/externals/libwebp/src/enc/quant.c', '../third_party/externals/libwebp/src/enc/syntax.c', '../third_party/externals/libwebp/src/enc/token.c', diff --git a/third_party/libwebp/webp/config.h b/third_party/libwebp/webp/config.h index b01473c827..62ade94d2a 100644 --- a/third_party/libwebp/webp/config.h +++ b/third_party/libwebp/webp/config.h @@ -14,14 +14,14 @@ // file, which replaces the checks in endian_inl.h to decide whether we have // particular builtins. -#ifdef __builtin_bswap64 +#ifdef __builtin_bswap64(x) #define HAVE_BUILTIN_BSWAP64 #endif -#ifdef __builtin_bswap32 +#ifdef __builtin_bswap32(x) #define HAVE_BUILTIN_BSWAP32 #endif -#ifdef __builtin_bswap16 +#ifdef __builtin_bswap16(x) #define HAVE_BUILTIN_BSWAP16 #endif |