diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt index c00db751b96..8c6436423f0 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt @@ -89,7 +89,7 @@ class DeserializerForClassfileDecompiler( } val (nameResolver, packageProto) = JvmProtoBufUtil.readPackageDataFrom(annotationData, strings) val membersScope = DeserializedPackageMemberScope( - createDummyPackageFragment(packageFqName), packageProto, nameResolver, + createDummyPackageFragment(header.packageName?.let(::FqName) ?: facadeFqName.parent()), packageProto, nameResolver, JvmPackagePartSource(binaryClassForPackageClass), deserializationComponents ) { emptyList() } return membersScope.getContributedDescriptors().toList() diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt index 9bef30b5222..346d481b90e 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt @@ -86,7 +86,9 @@ open class KotlinClsStubBuilder : ClsStubBuilder() { KotlinClassHeader.Kind.FILE_FACADE -> { val (nameResolver, packageProto) = JvmProtoBufUtil.readPackageDataFrom(annotationData, strings) val context = components.createContext(nameResolver, packageFqName, TypeTable(packageProto.typeTable)) - createFileFacadeStub(packageProto, classId.asSingleFqName(), context) + val fqName = header.packageName?.let { ClassId(FqName(it), classId.relativeClassName, classId.isLocal).asSingleFqName() } + ?: classId.asSingleFqName() + createFileFacadeStub(packageProto, fqName, context) } else -> throw IllegalStateException("Should have processed " + file.path + " with header $header") }