summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Santiago Aboy Solanes <solanes@google.com> 2025-01-09 09:34:33 -0800
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2025-01-09 09:34:33 -0800
commit85e6184371c9608fd64aebea1c96e45fcce2ce99 (patch)
tree8c78c81ff032ffde0b92d955704d95ee25fe8a23
parentf403e646f1588473be69126f0851c23a1437d6a8 (diff)
parentb594ff6de08fd50a3192dfcfd44947a3a4fc3f9f (diff)
Fix DCHECK in RegType::IsObjectArrayTypes am: b594ff6de0
Original change: https://android-review.googlesource.com/c/platform/art/+/3439062 Change-Id: I676b65bbb1f52034014298142b4e83b3afbe60a1 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--runtime/verifier/reg_type.cc2
-rw-r--r--tools/fuzzer/class-verifier-corpus/b388017887.dexbin0 -> 49208 bytes
2 files changed, 1 insertions, 1 deletions
diff --git a/runtime/verifier/reg_type.cc b/runtime/verifier/reg_type.cc
index a2b52f4f87..9b4cc94416 100644
--- a/runtime/verifier/reg_type.cc
+++ b/runtime/verifier/reg_type.cc
@@ -193,7 +193,7 @@ bool RegType::IsObjectArrayTypes() const {
return down_cast<const UnresolvedMergedReferenceType&>(*this).IsObjectArrayTypesImpl();
} else if (IsUnresolvedTypes()) {
// Primitive arrays will always resolve.
- DCHECK(descriptor_[1] == 'L' || descriptor_[1] == '[');
+ DCHECK_IMPLIES(descriptor_[0] == '[', descriptor_[1] == 'L' || descriptor_[1] == '[');
return descriptor_[0] == '[';
} else if (HasClass()) {
ObjPtr<mirror::Class> type = GetClass();
diff --git a/tools/fuzzer/class-verifier-corpus/b388017887.dex b/tools/fuzzer/class-verifier-corpus/b388017887.dex
new file mode 100644
index 0000000000..c3c0143e40
--- /dev/null
+++ b/tools/fuzzer/class-verifier-corpus/b388017887.dex
Binary files differ