mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[Grazie] Fix accidental removal of language modules
After platform-team intellij-wide refactoring there was bug due to which Grazie was removing not only old versions of language-modules, but also new one. GitOrigin-RevId: 287a9d02522603be2202aca27cb88c85525f7c49
This commit is contained in:
committed by
intellij-monorepo-bot
parent
6b279cfd50
commit
e2bb2380ee
@@ -4,6 +4,8 @@ package com.intellij.grazie
|
||||
import com.intellij.grazie.jlanguage.Lang
|
||||
import com.intellij.grazie.remote.GrazieRemote
|
||||
import com.intellij.openapi.application.PathManager
|
||||
import com.intellij.util.io.delete
|
||||
import com.intellij.util.io.isFile
|
||||
import com.intellij.util.lang.UrlClassLoader
|
||||
import org.languagetool.language.Language
|
||||
import org.languagetool.language.Languages
|
||||
@@ -16,9 +18,14 @@ import java.util.*
|
||||
|
||||
internal object GrazieDynamic {
|
||||
private val myDynClassLoaders by lazy {
|
||||
for (file in dynamicFolder.toFile().walk().filter { file -> file.isFile && Lang.values().all { it.remote.file != file } }) {
|
||||
val oldFiles = Files.walk(dynamicFolder).filter { file ->
|
||||
file.isFile() && Lang.values().all { it.remote.file.toAbsolutePath() != file.toAbsolutePath() }
|
||||
}
|
||||
|
||||
for (file in oldFiles) {
|
||||
file.delete()
|
||||
}
|
||||
|
||||
hashSetOf<ClassLoader>(
|
||||
UrlClassLoader.build()
|
||||
.parent(GraziePlugin.classLoader)
|
||||
|
||||
Reference in New Issue
Block a user