diff --git a/DEPS b/DEPS
index 318cf4e..bb44306 100644
--- a/DEPS
+++ b/DEPS
@@ -14,7 +14,7 @@
   "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",
-  "third_party/externals/libwebp" : "https://chromium.googlesource.com/webm/libwebp.git@3fe91635df8734b23f3c1b9d1f0c4fa8cfaf4e39",
+  "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
diff --git a/gyp/libwebp.gyp b/gyp/libwebp.gyp
index 70fffdd..da37416 100644
--- a/gyp/libwebp.gyp
+++ b/gyp/libwebp.gyp
@@ -28,7 +28,6 @@
             '../third_party/externals/libwebp/src/dec/frame.c',
             '../third_party/externals/libwebp/src/dec/idec.c',
             '../third_party/externals/libwebp/src/dec/io.c',
-            '../third_party/externals/libwebp/src/dec/layer.c',
             '../third_party/externals/libwebp/src/dec/quant.c',
             '../third_party/externals/libwebp/src/dec/tree.c',
             '../third_party/externals/libwebp/src/dec/vp8.c',
@@ -57,15 +56,20 @@
               '../third_party/externals/libwebp',
           ],
           'sources': [
+            '../third_party/externals/libwebp/src/dsp/alpha_processing.c',
+            '../third_party/externals/libwebp/src/dsp/alpha_processing_sse2.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_sse2.c',
             '../third_party/externals/libwebp/src/dsp/enc.c',
             '../third_party/externals/libwebp/src/dsp/enc_sse2.c',
             '../third_party/externals/libwebp/src/dsp/lossless.c',
+            '../third_party/externals/libwebp/src/dsp/lossless_sse2.c',
             '../third_party/externals/libwebp/src/dsp/upsampling.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_sse2.c',
           ],
           'cflags': [ '-w' ],
           'xcode_settings': { 'WARNING_CFLAGS': [ '-w' ] },
@@ -88,6 +92,7 @@
               'sources': [
                 '../third_party/externals/libwebp/src/dsp/dec_neon.c',
                 '../third_party/externals/libwebp/src/dsp/enc_neon.c',
+                '../third_party/externals/libwebp/src/dsp/lossless_neon.c',
                 '../third_party/externals/libwebp/src/dsp/upsampling_neon.c',
               ],
               # behavior similar dsp_neon.c.neon in an Android.mk
@@ -116,8 +121,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/layer.c',
             '../third_party/externals/libwebp/src/enc/picture.c',
+            '../third_party/externals/libwebp/src/enc/picture_csp.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',
@@ -143,6 +148,7 @@
             '../third_party/externals/libwebp/src/utils/huffman_encode.c',
             '../third_party/externals/libwebp/src/utils/quant_levels.c',
             '../third_party/externals/libwebp/src/utils/quant_levels_dec.c',
+            '../third_party/externals/libwebp/src/utils/random.c',
             '../third_party/externals/libwebp/src/utils/rescaler.c',
             '../third_party/externals/libwebp/src/utils/thread.c',
             '../third_party/externals/libwebp/src/utils/utils.c',
@@ -174,7 +180,7 @@
         },
       ],
     }, {
-      # use_system_libwep == 1
+      # use_system_libwebp == 1
       'targets': [
         {
           'target_name': 'libwebp',
diff --git a/resources/invalid_images/skbug3429.webp b/resources/invalid_images/skbug3429.webp
new file mode 100644
index 0000000..f9847e3
--- /dev/null
+++ b/resources/invalid_images/skbug3429.webp
Binary files differ
diff --git a/resources/invalid_images/skbug3442.webp b/resources/invalid_images/skbug3442.webp
new file mode 100644
index 0000000..747f04e
--- /dev/null
+++ b/resources/invalid_images/skbug3442.webp
Binary files differ
diff --git a/tests/BadIcoTest.cpp b/tests/BadIcoTest.cpp
index 9543d4b..240de51 100644
--- a/tests/BadIcoTest.cpp
+++ b/tests/BadIcoTest.cpp
@@ -11,23 +11,25 @@
 #include "SkImageDecoder.h"
 #include "SkOSFile.h"
 
-DEF_TEST(BadIco, reporter) {
-    const char* const badIcos [] = {
+DEF_TEST(BadImage, reporter) {
+    const char* const badImages [] = {
         "sigabort_favicon.ico",
         "sigsegv_favicon.ico",
         "sigsegv_favicon_2.ico",
         "ico_leak01.ico",
         "ico_fuzz0.ico",
-        "ico_fuzz1.ico"
+        "ico_fuzz1.ico",
+        "skbug3442.webp",
+        "skbug3429.webp",
     };
 
-    const char* badIcoFolder = "invalid_images";
+    const char* badImagesFolder = "invalid_images";
 
-    SkString resourcePath = GetResourcePath(badIcoFolder);
+    SkString resourcePath = GetResourcePath(badImagesFolder);
 
     SkBitmap bm;
-    for (size_t i = 0; i < SK_ARRAY_COUNT(badIcos); ++i) {
-        SkString fullPath = SkOSPath::Join(resourcePath.c_str(), badIcos[i]);
+    for (size_t i = 0; i < SK_ARRAY_COUNT(badImages); ++i) {
+        SkString fullPath = SkOSPath::Join(resourcePath.c_str(), badImages[i]);
         bool success = SkImageDecoder::DecodeFile(fullPath.c_str(), &bm);
         // These files are invalid, and should not decode. More importantly,
         // though, we reached here without crashing.
