From cfa3aaf338818dcff78288d95d673503f64f8db4 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Wed, 13 Nov 2019 19:28:30 +0100 Subject: [PATCH] Handle clashed class names in getInstanceFieldObjectId class name verification (IDEA-226477) GitOrigin-RevId: 357b7f285458af61baf4e781ffa5fd820b109345 --- .../com/intellij/diagnostic/hprof/navigator/ObjectNavigator.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/platform-impl/src/com/intellij/diagnostic/hprof/navigator/ObjectNavigator.kt b/platform/platform-impl/src/com/intellij/diagnostic/hprof/navigator/ObjectNavigator.kt index de788ecc4474..e726ba39bfa7 100644 --- a/platform/platform-impl/src/com/intellij/diagnostic/hprof/navigator/ObjectNavigator.kt +++ b/platform/platform-impl/src/com/intellij/diagnostic/hprof/navigator/ObjectNavigator.kt @@ -61,7 +61,7 @@ abstract class ObjectNavigator(val classStore: ClassStore, val instanceCount: Lo fun getInstanceFieldObjectId(className: String?, name: String): Long { val refs = getReferencesCopy() className?.let { - assert(className == getClass().name) { "Expected $className, got ${getClass().name}" } + assert(className == getClass().name.substringAfter('!')) { "Expected $className, got ${getClass().name}" } } val indexOfField = getClass().allRefFieldNames(classStore).indexOfFirst { it == name } return refs[indexOfField]