diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/shelf/UnshelveChangesAction.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/shelf/UnshelveChangesAction.java index a619b8308f0c..d008bc6443bd 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/shelf/UnshelveChangesAction.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/shelf/UnshelveChangesAction.java @@ -98,12 +98,22 @@ public class UnshelveChangesAction extends DumbAwareAction { @Nullable private static LocalChangeList tryToMatchWithExistingChangelist(@NotNull ChangeListManager changeListManager, @NotNull final String defaultName) { - return ContainerUtil.find(changeListManager.getChangeListsCopy(), new Condition() { + List matched = ContainerUtil.findAll(changeListManager.getChangeListsCopy(), new Condition() { @Override public boolean value(LocalChangeList list) { - return defaultName.contains(list.getName()); + return defaultName.contains(list.getName().trim()); } }); + int maxLen = -1; + LocalChangeList bestMatch = null; + for (LocalChangeList changeList : matched) { + int len = changeList.getName().trim().length(); + if (len > maxLen) { + maxLen = len; + bestMatch = changeList; + } + } + return bestMatch; } @Override