Merge "external/libaom: disable av1_(apply_|)selfguided_restoration_neon"
diff --git a/Android.bp b/Android.bp
index 523bb8c..3a5ad26 100644
--- a/Android.bp
+++ b/Android.bp
@@ -507,6 +507,10 @@
 
     },
 
+    sanitize: {
+        blacklist: "libaom_blacklist.txt",
+    },
+
 }
 
 cc_fuzz {
diff --git a/Android.bp.in b/Android.bp.in
index e5851db..3d9c5c6 100644
--- a/Android.bp.in
+++ b/Android.bp.in
@@ -106,6 +106,10 @@
 
     },
 
+    sanitize: {
+        blacklist: "libaom_blacklist.txt",
+    },
+
 }
 
 cc_fuzz {
diff --git a/README.version b/README.version
index 23b6ba1..95519e8 100644
--- a/README.version
+++ b/README.version
@@ -4,6 +4,7 @@
   Rename files to avoid object collisions:
     aom_dsp/x86/highbd_intrapred_sse2.asm
     aom_dsp/x86/intrapred_sse2.asm
+  7ad847ac6 Seq header shouldn't change in the middle of frame
 Updates to libaom/examples/av1_dec_fuzzer.cc to include the following commits from upstream
 139efd2c8 av1_dec_fuzzer: get thread count from 1st byte of frame header
 adfc4b7f8 av1_dec_fuzzer: Remove fmemopen dependency
diff --git a/libaom/av1/decoder/obu.c b/libaom/av1/decoder/obu.c
index aaea572..ac66df5 100644
--- a/libaom/av1/decoder/obu.c
+++ b/libaom/av1/decoder/obu.c
@@ -760,6 +760,11 @@
       case OBU_SEQUENCE_HEADER:
         decoded_payload_size = read_sequence_header_obu(pbi, &rb);
         if (cm->error.error_code != AOM_CODEC_OK) return -1;
+        // The sequence header should not change in the middle of a frame.
+        if (pbi->sequence_header_changed && pbi->seen_frame_header) {
+          cm->error.error_code = AOM_CODEC_CORRUPT_FRAME;
+          return -1;
+        }
         break;
       case OBU_FRAME_HEADER:
       case OBU_REDUNDANT_FRAME_HEADER:
diff --git a/libaom/test/invalid_file_test.cc b/libaom/test/invalid_file_test.cc
index 0478c7e..2a1c9a9 100644
--- a/libaom/test/invalid_file_test.cc
+++ b/libaom/test/invalid_file_test.cc
@@ -114,6 +114,8 @@
 const DecodeParam kAV1InvalidFileTests[] = {
   { 1, "invalid-bug-1814.ivf" },
   { 1, "invalid-chromium-906381.ivf" },
+  { 1, "invalid-google-142530197.ivf" },
+  { 1, "invalid-google-142530197-1.ivf" },
   { 1, "invalid-oss-fuzz-9288.ivf" },
   { 4, "invalid-oss-fuzz-9463.ivf" },
   { 1, "invalid-oss-fuzz-9482.ivf" },
diff --git a/libaom/test/test-data.sha1 b/libaom/test/test-data.sha1
index bd63206..91487e4 100644
--- a/libaom/test/test-data.sha1
+++ b/libaom/test/test-data.sha1
@@ -4,6 +4,10 @@
 d3964f9dad9f60363c81b688324d95b4ec7c8038 *invalid-bug-1814.ivf.res
 09aa07e5325b3bb5462182eb30b8ecc914630740 *invalid-chromium-906381.ivf
 09d2af8dd22201dd8d48e5dcfcaed281ff9422c7 *invalid-chromium-906381.ivf.res
+f7c83c14aa35b928ba8b70f3eaa3b92070be4519 *invalid-google-142530197-1.ivf
+d3964f9dad9f60363c81b688324d95b4ec7c8038 *invalid-google-142530197-1.ivf.res
+703c05720d5d67053bcee44987635cd78af2f971 *invalid-google-142530197.ivf
+d3964f9dad9f60363c81b688324d95b4ec7c8038 *invalid-google-142530197.ivf.res
 fa06784f23751d8c37be94160fb821e855199af4 *invalid-oss-fuzz-10061.ivf
 b055f06b9a95aaa5697fa26497b592a47843a7c8 *invalid-oss-fuzz-10061.ivf.res
 c9e06c4c7fb7d69fd635a1f606a5e478d60e99cf *invalid-oss-fuzz-10117-mc-buf-use-highbd.ivf
diff --git a/libaom/test/test_data_util.cmake b/libaom/test/test_data_util.cmake
index c3c86aa..69703d6 100644
--- a/libaom/test/test_data_util.cmake
+++ b/libaom/test/test_data_util.cmake
@@ -516,6 +516,10 @@
               "invalid-bug-1814.ivf.res"
               "invalid-chromium-906381.ivf"
               "invalid-chromium-906381.ivf.res"
+              "invalid-google-142530197-1.ivf"
+              "invalid-google-142530197-1.ivf.res"
+              "invalid-google-142530197.ivf"
+              "invalid-google-142530197.ivf.res"
               "invalid-oss-fuzz-10061.ivf"
               "invalid-oss-fuzz-10061.ivf.res"
               "invalid-oss-fuzz-10117-mc-buf-use-highbd.ivf"
diff --git a/libaom_blacklist.txt b/libaom_blacklist.txt
new file mode 100644
index 0000000..07b3904
--- /dev/null
+++ b/libaom_blacklist.txt
@@ -0,0 +1,4 @@
+[cfi]
+# libaom/av1/common/reconintra.c: indirect call to assembly code on x86/x86_64 platform
+fun:dr_predictor
+fun:build_intra_predictors