Don't try to get KtFile on random element as it can throw exception

For example, this can be for copied elements (DummyHolder)
This commit is contained in:
Mikhail Zarechenskiy
2017-09-14 06:10:50 +03:00
parent b1d9abdf83
commit f905d56b38
@@ -152,7 +152,7 @@ private fun getExtraLanguageFeatures(
val KtElement.languageVersionSettings: LanguageVersionSettings
get() {
if (ServiceManager.getService(containingKtFile.project, ProjectFileIndex::class.java) == null) {
if (ServiceManager.getService(project, ProjectFileIndex::class.java) == null) {
return LanguageVersionSettingsImpl.DEFAULT
}
return ModuleUtilCore.findModuleForPsiElement(this)?.languageVersionSettings ?: LanguageVersionSettingsImpl.DEFAULT
@@ -160,7 +160,7 @@ val KtElement.languageVersionSettings: LanguageVersionSettings
val KtElement.jvmTarget: JvmTarget
get() {
if (ServiceManager.getService(containingKtFile.project, ProjectFileIndex::class.java) == null) {
if (ServiceManager.getService(project, ProjectFileIndex::class.java) == null) {
return JvmTarget.DEFAULT
}
return ModuleUtilCore.findModuleForPsiElement(this)?.targetPlatform?.version as? JvmTarget ?: JvmTarget.DEFAULT