Index: runtime/vm/raw_object.h |
diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h |
index 89e9999932e16f5cafba6eee93568e9558653968..db8bce33a71002e72537166ab71a9977d2f25938 100644 |
--- a/runtime/vm/raw_object.h |
+++ b/runtime/vm/raw_object.h |
@@ -427,11 +427,11 @@ class RawObject { |
intptr_t result = SizeTag::decode(tags); |
if (result != 0) { |
#if defined(DEBUG) |
- // TODO(22501) Array::MakeArray has a race with this code: we might have |
- // loaded tags field and then MakeArray could have updated it leading |
- // to inconsistency between SizeFromClass() and SizeTag::decode(tags). |
- // We are working around it by reloading tags_ and recomputing |
- // size from tags. |
+ // TODO(22501) Array::MakeFixedLength has a race with this code: we might |
+ // have loaded tags field and then MakeFixedLength could have updated it |
+ // leading to inconsistency between SizeFromClass() and |
+ // SizeTag::decode(tags). We are working around it by reloading tags_ and |
+ // recomputing size from tags. |
const intptr_t size_from_class = SizeFromClass(); |
if ((result > size_from_class) && (GetClassId() == kArrayCid) && |
(ptr()->tags_ != tags)) { |