From d7f07872ef8b84487e1bb2febcaf714828499932 Mon Sep 17 00:00:00 2001 From: Julia Beliaeva Date: Mon, 4 Jun 2018 17:52:29 +0300 Subject: [PATCH] [git] intern root path in GitCommit --- plugins/git4idea/src/git4idea/GitCommit.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/git4idea/src/git4idea/GitCommit.java b/plugins/git4idea/src/git4idea/GitCommit.java index 823d6275102a..942a05931af6 100644 --- a/plugins/git4idea/src/git4idea/GitCommit.java +++ b/plugins/git4idea/src/git4idea/GitCommit.java @@ -22,6 +22,7 @@ import com.intellij.openapi.vcs.VcsException; import com.intellij.openapi.vcs.changes.Change; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.util.containers.ContainerUtil; +import com.intellij.util.containers.WeakStringInterner; import com.intellij.vcs.log.Hash; import com.intellij.vcs.log.VcsUser; import com.intellij.vcs.log.impl.VcsChangesLazilyParsedDetails; @@ -43,6 +44,7 @@ import java.util.List; */ public final class GitCommit extends VcsChangesLazilyParsedDetails { private static final Logger LOG = Logger.getInstance(GitCommit.class); + private static final WeakStringInterner ourPathsInterner = new WeakStringInterner(); @NotNull private final GitLogUtil.DiffRenameLimit myRenameLimit; public GitCommit(Project project, @NotNull Hash hash, @NotNull List parents, long commitTime, @NotNull VirtualFile root, @@ -89,7 +91,7 @@ public final class GitCommit extends VcsChangesLazilyParsedDetails { } private class UnparsedChanges extends VcsChangesLazilyParsedDetails.UnparsedChanges { - @NotNull private final String myRootPath = getRoot().getPath(); + @NotNull private final String myRootPath = ourPathsInterner.intern(getRoot().getPath()); private UnparsedChanges(@NotNull Project project, @NotNull List> changesOutput) {