IdeStartupScripts: do not attempt to execute backup files

This commit is contained in:
Sergey Savenko
2015-08-10 13:08:22 +03:00
parent 127d7e39ad
commit 7f24e34e54
2 changed files with 10 additions and 4 deletions
@@ -56,11 +56,11 @@ import java.util.Set;
* <p> Bundled resources are updated automatically upon plugin version change. For bundled plugins, application version is used. </p>
*/
public class ExtensionsRootType extends RootType {
public static final String EXTENSIONS_PATH = "extensions";
public static final String BACKUP_FILE_EXTENSION = "old";
static final Logger LOG = Logger.getInstance(ExtensionsRootType.class);
private static final String HASH_ALGORITHM = "MD5";
private static final String EXTENSIONS_PATH = "extensions";
private static final String BACKUP_FILE_EXTENSION = "old";
ExtensionsRootType() {
super(EXTENSIONS_PATH, "Extensions");
@@ -129,6 +129,11 @@ public class ExtensionsRootType extends RootType {
return super.substituteName(project, file);
}
public boolean isBackupFile(@NotNull VirtualFile file) {
String extension = file.getExtension();
return !file.isDirectory() && extension != null && extension.startsWith(BACKUP_FILE_EXTENSION);
}
@Nullable
String getPath(@Nullable VirtualFile resource) {
VirtualFile pluginResourcesDir = getPluginResourcesDirectoryFor(resource);
@@ -170,9 +170,10 @@ class IdeStartupScripts extends ApplicationComponent.Adapter {
}
scripts = ContainerUtil.filter(scripts, new Condition<VirtualFile>() {
private final ExtensionsRootType myExtensionsRootType = ExtensionsRootType.getInstance();
@Override
public boolean value(VirtualFile file) {
return !file.isDirectory() && !README_FILE_NAME.equals(file.getName());
return !file.isDirectory() && !myExtensionsRootType.isBackupFile(file) && !README_FILE_NAME.equals(file.getName());
}
});