From 25afaad16d15097c27da4a7b5e2f1c509aed5dd8 Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Fri, 13 Apr 2018 02:41:05 +0300 Subject: [PATCH] icons.gant: fix svg icon loading on windows --- .../org/jetbrains/intellij/build/images/util.kt | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/util.kt b/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/util.kt index 13713d9f521f..ec444dc10901 100644 --- a/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/util.kt +++ b/platform/build-scripts/icons/src/org/jetbrains/intellij/build/images/util.kt @@ -20,8 +20,6 @@ import com.intellij.util.SVGLoader import java.awt.Dimension import java.awt.Image import java.io.File -import java.io.IOException -import java.net.URL import javax.imageio.ImageIO internal val File.children: List get() = if (isDirectory) listFiles().toList() else emptyList() @@ -40,7 +38,11 @@ internal fun isIcon(file: File): Boolean { private fun isImage(file: File) = ImageExtension.fromFile(file) != null internal fun imageSize(file: File): Dimension? { - val image: Image = loadImage(file) ?: return null + val image = loadImage(file) + if (image == null) { + println("WARNING: can't load ${file.path}") + return null + } val width = image.getWidth(null) val height = image.getHeight(null) return Dimension(width, height) @@ -48,12 +50,7 @@ internal fun imageSize(file: File): Dimension? { internal fun loadImage(file: File): Image? { if (file.name.endsWith(".svg")) { - try { - return SVGLoader.load(URL("file://" + file.path), 1.0f) - } - catch (e: IOException) { - return null - } + return SVGLoader.load(file.toURI().toURL(), 1.0f) } else { return ImageIO.read(file)