Fixed exception on opening non-Kotlin class file.
#EA-35266 fixed
This commit is contained in:
+5
-1
@@ -31,6 +31,10 @@ public class JetClsFileDecompiledPsiFileProvider implements ClsFileDecompiledPsi
|
||||
@Nullable
|
||||
@Override
|
||||
public PsiFile getDecompiledPsiFile(@NotNull PsiJavaFile psiFile) {
|
||||
return JetDecompiledData.getDecompiledData((ClsFileImpl) psiFile).getJetFile();
|
||||
ClsFileImpl clsFile = (ClsFileImpl)psiFile;
|
||||
if (JetDecompiledData.isKotlinFile(clsFile)) {
|
||||
return JetDecompiledData.getDecompiledData(clsFile).getJetFile();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -80,9 +80,10 @@ public class JetDecompiledData {
|
||||
|
||||
public static boolean isKotlinFile(@NotNull Project project, @NotNull VirtualFile vFile) {
|
||||
ClsFileImpl clsFile = getClsFile(project, vFile);
|
||||
if (clsFile == null) {
|
||||
return false;
|
||||
}
|
||||
return clsFile != null && isKotlinFile(clsFile);
|
||||
}
|
||||
|
||||
public static boolean isKotlinFile(@NotNull ClsFileImpl clsFile) {
|
||||
PsiClass psiClass = clsFile.getClasses()[0];
|
||||
return DecompiledDataFactory.isKotlinNamespaceClass(psiClass) || DecompiledDataFactory.isKotlinClass(psiClass);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user