mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -17,6 +17,7 @@ package com.intellij.openapi.diff;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.ApplicationStarterEx;
|
||||
import com.intellij.openapi.application.PathManager;
|
||||
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
import com.intellij.openapi.util.io.StreamUtil;
|
||||
@@ -162,7 +163,12 @@ public abstract class ApplicationStarterBase implements ApplicationStarterEx {
|
||||
|
||||
@NotNull
|
||||
public static VirtualFile findFile(final String path) throws OperationFailedException {
|
||||
final VirtualFile file = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(new File(path));
|
||||
File ioFile = new File(path);
|
||||
if (!ioFile.exists()) {
|
||||
final String dir = PathManager.getOriginalWorkingDir();
|
||||
ioFile = new File(dir + File.separator + path);
|
||||
}
|
||||
final VirtualFile file = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(ioFile);
|
||||
if (file == null) {
|
||||
throw new OperationFailedException("Can't find file " + path);
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
package com.intellij.openapi.application;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.intellij.CommonBundle;
|
||||
import com.intellij.openapi.util.NamedJDOMExternalizable;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
import com.intellij.openapi.util.SystemInfoRt;
|
||||
@@ -49,6 +48,7 @@ public class PathManager {
|
||||
@NonNls public static final String PROPERTY_HOME_PATH = "idea.home.path";
|
||||
@NonNls public static final String PROPERTY_LOG_PATH = "idea.log.path";
|
||||
@NonNls public static final String PROPERTY_PATHS_SELECTOR = "idea.paths.selector";
|
||||
@NonNls public static final String PROPERTY_ORIGINAL_WORKING_DIR = "original.working.dir";
|
||||
|
||||
@NonNls private static String ourHomePath;
|
||||
@NonNls private static String ourSystemPath;
|
||||
@@ -293,6 +293,11 @@ public class PathManager {
|
||||
return new File(getOptionsPath()+File.separatorChar+externalizable.getExternalFileName()+".xml");
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static String getOriginalWorkingDir() {
|
||||
return System.getProperty(PROPERTY_ORIGINAL_WORKING_DIR);
|
||||
}
|
||||
|
||||
@NonNls
|
||||
public static File getOptionsFile(@NonNls String fileName) {
|
||||
return new File(getOptionsPath()+File.separatorChar+fileName+".xml");
|
||||
|
||||
Reference in New Issue
Block a user