diff options
Diffstat (limited to 'runtime/mirror/class-inl.h')
| -rw-r--r-- | runtime/mirror/class-inl.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/runtime/mirror/class-inl.h b/runtime/mirror/class-inl.h index 451235c327..2daa6e49a6 100644 --- a/runtime/mirror/class-inl.h +++ b/runtime/mirror/class-inl.h @@ -546,6 +546,14 @@ inline bool Class::DescriptorEquals(const char* match) { } } +inline void Class::AssertInitializedOrInitializingInThread(Thread* self) { + if (kIsDebugBuild && !IsInitialized()) { + CHECK(IsInitializing()) << PrettyClass(this) << " is not initializing: " << GetStatus(); + CHECK_EQ(GetClinitThreadId(), self->GetTid()) << PrettyClass(this) + << " is initializing in a different thread"; + } +} + } // namespace mirror } // namespace art |