diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/action/HgPullAction.java b/plugins/hg4idea/src/org/zmlx/hg4idea/action/HgPullAction.java index 0d1f79b7f488..c6650a12dd34 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/action/HgPullAction.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/action/HgPullAction.java @@ -35,23 +35,23 @@ public class HgPullAction extends HgAbstractGlobalAction { dialog.show(); if (dialog.isOK()) { dialog.rememberSettings(); - new Task.Backgroundable(project, "Pulling changes from " + dialog.getSource(), false) { + final String source = dialog.getSource(); + final HgRepository hgRepository = dialog.getRepository(); + new Task.Backgroundable(project, "Pulling changes from " + source, false) { @Override public void run(@NotNull ProgressIndicator indicator) { - executePull(dialog, project); - markDirtyAndHandleErrors(project, dialog.getRepository()); + executePull(project, hgRepository, source); + markDirtyAndHandleErrors(project, hgRepository.getRoot()); } }.queue(); } } - private static void executePull(final HgPullDialog dialog, final Project project) { - final HgPullCommand command = new HgPullCommand( - project, dialog.getRepository() - ); - command.setSource(dialog.getSource()); - + private static void executePull(final Project project, final HgRepository hgRepository, final String source) { + final HgPullCommand command = new HgPullCommand(project, hgRepository.getRoot()); + command.setSource(source); command.execute(); + hgRepository.update(); } } diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/ui/HgPullDialog.java b/plugins/hg4idea/src/org/zmlx/hg4idea/ui/HgPullDialog.java index 2729817a404e..e140af36108b 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/ui/HgPullDialog.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/ui/HgPullDialog.java @@ -82,8 +82,9 @@ public class HgPullDialog extends DialogWrapper { rememberedInputs.addUrl(HgUtil.removePasswordIfNeeded(getSource())); } - public VirtualFile getRepository() { - return hgRepositorySelector.getRepository().getRoot(); + @NotNull + public HgRepository getRepository() { + return hgRepositorySelector.getRepository(); } public String getSource() {