diff --git a/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java index bfeb57621578..1f053bfcfbec 100644 --- a/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java @@ -60,10 +60,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.TestOnly; -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.io.InputStream; +import java.io.*; import java.net.URL; import java.nio.charset.Charset; import java.util.*; @@ -672,6 +669,13 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements Persistent int n = newStream.read(buffer, 0, buffer.length); newStream.close(); log("F: Redetect run for file: " + file.getName() + "; result: "+fileType.getName()+"; processor ret: "+r+"; stream: "+inputStream+"; newStream: "+newStream+"; read: "+n+"; buffer: "+Arrays.toString(buffer)); + try { + InputStream in = ReflectionUtil.getField(newStream.getClass(), newStream, InputStream.class, "in"); + String path = ReflectionUtil.getField(in.getClass(), in, String.class, "path"); + log("F: inputStream.in: " + in + "("+in.getClass()+"; in.path: "+path+"; path.exists "+new File(path).exists()+"; canRead: "+new File(path).canRead()); + } + catch (Exception ignored) { + } } if (LOG.isDebugEnabled()) {