VirtualFile (@NotNull VirtualFile path) { String suffix = path.getExtension(); if (suffix != null) { suffix = StringUtil.toLowerCase(suffix); // Why on earth empty suffix is null and not ""? } if (!path.isDirectory() && ("zip".equals(suffix) || "egg".equals(suffix))) { // a .zip / .egg file must have its root extracted first final VirtualFile jar = JarFileSystem.getInstance().getJarRootForLocalFile(path); if (jar != null) { return jar; } } return path; }