From 62eb9e9909294f08d6f09ca32b31dd16dafe1024 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Mon, 10 Apr 2017 13:33:33 +0200 Subject: [PATCH] Check jar name before calling getVirtualFileForJar() #KT-17331 Fixed --- .../kotlin/idea/framework/JsLibraryStdDetectionUtil.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/framework/JsLibraryStdDetectionUtil.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/framework/JsLibraryStdDetectionUtil.kt index 063c6881418..a255683356d 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/framework/JsLibraryStdDetectionUtil.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/framework/JsLibraryStdDetectionUtil.kt @@ -57,12 +57,12 @@ object JsLibraryStdDetectionUtil { for (root in classesRoots) { if (root.fileSystem.protocol !== StandardFileSystems.JAR_PROTOCOL) continue - val jar = VfsUtilCore.getVirtualFileForJar(root) ?: continue - val name = jar.name + val name = root.url.substringBefore("!/").substringAfterLast('/') if (name == PathUtil.JS_LIB_JAR_NAME || name == PathUtil.JS_LIB_10_JAR_NAME || PathUtil.KOTLIN_STDLIB_JS_JAR_PATTERN.matcher(name).matches() || PathUtil.KOTLIN_JS_LIBRARY_JAR_PATTERN.matcher(name).matches()) { + val jar = VfsUtilCore.getVirtualFileForJar(root) ?: continue var isJSStdLib = jar.getUserData(IS_JS_LIBRARY_STD_LIB) if (isJSStdLib == null) { isJSStdLib = LibraryUtils.isKotlinJavascriptStdLibrary(File(jar.path))