diff --git a/platform/platform-api/src/com/intellij/openapi/vfs/VfsUtil.java b/platform/platform-api/src/com/intellij/openapi/vfs/VfsUtil.java index a6fe7c6dc669..4317fb122eb7 100644 --- a/platform/platform-api/src/com/intellij/openapi/vfs/VfsUtil.java +++ b/platform/platform-api/src/com/intellij/openapi/vfs/VfsUtil.java @@ -714,14 +714,15 @@ public class VfsUtil extends VfsUtilCore { return index < 0 ? null : urlOrPath.substring(index+1); } - public static void markDirtyAndRefresh(boolean async, boolean recursive, boolean loadChildren, VirtualFile... files) { + @NotNull + public static List markDirty(boolean recursive, boolean reloadChildren, VirtualFile... files) { List list = ContainerUtil.filter(Condition.NOT_NULL, files); if (list.isEmpty()) { - return; + return Collections.emptyList(); } for (VirtualFile file : list) { - if (loadChildren) { + if (reloadChildren) { file.getChildren(); } @@ -734,7 +735,12 @@ public class VfsUtil extends VfsUtilCore { } } } + return list; + } + public static void markDirtyAndRefresh(boolean async, boolean recursive, boolean reloadChildren, VirtualFile... files) { + List list = markDirty(recursive, reloadChildren, files); + if (list.isEmpty()) return; LocalFileSystem.getInstance().refreshFiles(list, async, recursive, null); } }